Ja, det fungerar att nästla tells, det är så man brukar göra, eftersom man inte kan lägga tell och end tell omlott. Om du har en repeat och en tell tex så kan du inte ha ha ordningen tell, repeat, end tell, end repeat. Det måste vara tell, repeat, end repeat, end tell, eller tvärtom, repeat, tell, end tell, end repeat.
En annan sak att tänka på som är upphovet till många felmeddelanden är att Applescript så att säga byter ordlista innanför ett tell-statement, så om du har ett tell application "Finder" (nånting) så förstår nu Applescript en massa saker om filer, mappar, diskar mm, men när "end tell" kommer så glömmer Applescript bort allt den nyss kunde. Så ett "set name of file bla bla bla" som kommer efter "end tell", kommer att misslyckas för Applescript förstår sig inte på sådana där konstiga kommandon (som den nyss kunde) när de står utanför ett "tell application "Finder".
Det är lite som att jobba med en senil chimpans som man försöker lära att göra saker, men det är bra. Det får en nämligen att dela upp alla problem i mindre och mindre delar, tills man kan lösa delarna. Det är grunden i nästan all programmering och utveckling, det sättet att tänka.
Felaktiga datatyper är nästa felkälla, om du har data i en form, tex en referens till ett filnamn, så är det en egen datatyp så att säga som Finder förstår. Så länge du är innanför ett "tell application "Finder"" så förstås detta. Ett annat program som tex Skriv Text, Photoshop eller Word, vill kanske istället ha namn+sökväg där de skall spara saker i en annan form, tex som text. Alltså måste du före du är utanför tell application Finder göra om filreferensen till en textsträng, som kan användas innanför "tell application Photoshop - save window 1 in filereferece" eller något liknande. Huruvida det är just på pricken så här i olika program får man kolla i deras ordlistor. Så när man får felmeddelanden av det slaget, så får man kolla vilken datatyp man tilldelade en variabel, var någonstans man stod då (innanför vilket tell-statement) och vilken datatyp som kommandot som misslyckas egentligen vill ha.
Om ovanstående inte hjälper att göra felmeddelanden tydliga, så skicka in ditt script och ange felmeddelandet, så kan vi säkert hjälpa till här.