Trouvé un script pour créer une distribution en masse de courrier électronique:
on run {input, parameters}
set addresses to "aa@example.com
bb@example.com"
set names to "Ann
Bob"
set title to "title"
set theAttachmentFile to "SSD:Users:me:file.pdf"
set body1 to "Hello "
set body2 to ",
This is a test message"
repeat with a in paragraphs of addresses
tell application "Mail"
activate
tell (make new outgoing message)
set visible to true
make new recipient at end of to recipients with properties {address:a}
set subject to title
-- set salutation to ???
set body to body1 & salutation & body2
set content to body
--save
--send
end tell
end tell
end repeat
return input
end run
Ajouter une pièce jointe comme conseillé par l'utilisateur3439894 avec:
tell content to make new attachment with properties {file name:theAttachmentFile as alias} at after last paragraph
Comment ajouter un nom au corps de chaque destinataire (marqué d'un ???)?
Variable content is not defined.
save, tout fonctionne, mais je reçois une erreur File /Users/me/file.pdf wasn’t found Devrais-je le convertir en Macintosh HDD:Users:me:file.pdf?
addresses et names à paragraphs of ... au lieu d'utiliser un list objet , par exemple. set addresses to {"aa@example.com", "bb@example.com"} et set names to {"Ann", "Bob"}, en supposant que les listes ont le même compte et dans le bon ordre correspondant ... de cette façon, vous pouvez indexer les deux listes de manière à ce que c’est-à-dire item i of names Correspond à item i of addresses par exemple. repeat with i from 1 to (count addresses) puis {address:a} devient {address:item i of addresses} et -- set salutation to ??? devient: set salutation to item i of names
set content to body, sur la ligne suivante, essayez d’utiliser:tell content to make new attachment with properties {file name:theAttachmentFile as alias} at after last paragraph