Automatiser envoi mail journalier

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Tout le contenu de ton fichier texte est comme ça, et tu veux dans chaque ligne récupérer le mail ?
Dans ton petit exemple tu veux récupérer: cgigi@tranat.net et maxlemoine@tranat.net
ou seulement celle de l'envoyeur cgigi@tranat.net

Autre question ces mail à récupérer sont 'ils tous dans une ligne commençant par De:xxxxx ou il y en a t'il dans d'autres lignes ?

Ce n'est que les premières question pour voir l'approche !
 
Dernière édition:

digisi

Membre junior
26 Avril 2020
39
0
33
Tout le contenu de ton fichier texte est comme ça, et tu veux dans chaque ligne récupérer le mail ?
Dans ton petit exemple tu veux récupérer: cgigi@tranat. net et maxlemoine@tranat.net
ou seulement celle de l'envoyeur cgigi@tranat.net

Autre question ces mail à récupérer sont 'ils tous dans une ligne commençant par De:xxxxx ou il y en a t'il dans d'autres lignes ?

Ce n'est que les premières question pour voir l'approche !
Oui le fichier texte est comme ca, sinon parfois les mails sont dans le corps du message.
Je veux tout récupérer expéditeur et destinataire et ce qui est dans le corps
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Le seul problème est de définir le début et le fin de l'adresse mail. J'ai mis 3 possibilités de séparateur: < , > et espace voir si ça suffira.
Le script te demande choisir ton fichier texte à traiter, fait le boulot en créant une fichier texte sur le bureau "les adresses mail.txt"qui contient 1 adresse mail trouvée par ligne. Il te met un message lorsqu'il a terminé... ça risque d'être long en applescript. Un script shell serait mieux adapter pour ce cas, mais je suis incapable de le faire.
le script
Bloc de code:
set monfichier to choose file with prompt "Sélectionner le fichier texte à traiter"
open for access monfichier -- ouvre ce fichier en lecture
set vartoto to read monfichier -- lit le fichier et le met dans la variable vartoto
close access monfichier -- ferme le fichier

set nblignes to count of paragraph of vartoto
repeat with j from 1 to nblignes
    set vartoto1 to ""
    set AppleScript's text item delimiters to "@"
    set vartoto1 to paragraph j of vartoto as string
    set la to offset of "@" in vartoto1
    if la = 0 then
    else -- Si la ligne contient un @
        set separateur to {">", "<", " "} -- Défini les séparateurs possible avant et après une adresse mail
        set nbchar to count item of vartoto1
        set la1 to (la - 1)
       
        repeat
            if item la1 of vartoto1 is in separateur then
                exit repeat
            end if
            set la1 to (la1 - 1)
            if la1 = 0 then exit repeat
        end repeat
       
        set lafin to (la + 1)
        repeat
            if item lafin of vartoto1 is in separateur then
                exit repeat
            end if
            set lafin to (lafin + 1)
            if lafin = nbchar + 1 then exit repeat
        end repeat
        set adress to text (la1 + 1) thru (lafin - 1) of vartoto1
       
        set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
        write adress & return to lelog starting at eof
        close access lelog
    end if
end repeat

tell application "Finder"
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Après réflexions j'ai apporté 2 modifs,
-J'ai ajouté les séparateurs parenthèses ( ) [ ]
- Si un paragraphe (bloc de texte compris entre 2 retours lignes) comportait plusieurs adresses mail, seule la 1ere était prise en compte.
le nouveau script:
Bloc de code:
set monfichier to choose file with prompt "Sélectionner le fichier texte à traiter"
open for access monfichier -- ouvre ce fichier en lecture
set vartoto to read monfichier -- lit le fichier et le met dans la variable vartoto
close access monfichier -- ferme le fichier

set nblignes to count of paragraph of vartoto
repeat with j from 1 to nblignes
    set vartoto1 to ""
    set AppleScript's text item delimiters to ""
    set vartoto1 to paragraph j of vartoto as string
    set la to offset of "@" in vartoto1
    if la = 0 then
    else -- Si la ligne contient un @
        set separateur to {">", "<", " ", "(", ")", "[", "]"} -- Défini les séparateurs possible avant et après une adresse mail
        set nbchar to count item of vartoto1
        set la1 to (la - 1)
        repeat
            
            if la = 0 then
                exit repeat
            else
                
                repeat
                    if item la1 of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set la1 to (la1 - 1)
                    if la1 = 0 then exit repeat
                end repeat
                
                set lafin to (la + 1)
                repeat
                    if item lafin of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set lafin to (lafin + 1)
                    if lafin = nbchar + 1 then exit repeat
                end repeat
                set adress to text (la1 + 1) thru (lafin - 1) of vartoto1
                
                set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
                write adress & return to lelog starting at eof
                close access lelog
            end if
            set vartoto1 to characters (la + 1) thru nbchar of vartoto1 as string
            set nbchar to count item of vartoto1
            set la to offset of "@" in vartoto1
            set la1 to (la - 1)
        end repeat
    end if
    
end repeat

tell application "Finder"
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Bonjour,
Des retours pour le script extrait adresse ??
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Bonjour,
Confinement oblige, je me suis occupé.
Le nouveau script te demande de choisir ton fichier texte à traiter
Il en extrait toutes les adresses mail dans un fichier texte sur le bureau du nom de "Les adresses mail.txt"
Il ouvre ensuite ce fichier dans numbers et supprime toutes les adresses en doubles et enregistre ce fichier sur le bureau au nom de "Les adresses mail.numbers" . Les adresses sont par ordre alphabétique (tri oblige pour suppression des doubles).
Il te met un message lorsqu'il a terminé.

La colonne A cellule A1 = "mes adresses mail"
Les cellules A2 et suivantes contiennent les adresses mail. (prêtent pour le script d'envoi de mail)
Chez moi cela fonctionne...
Donne un retour !

Bloc de code:
set monfichier to choose file with prompt "Sélectionner le fichier texte à traiter"
open for access monfichier -- ouvre ce fichier en lecture
set vartoto to read monfichier -- lit le fichier et le met dans la variable vartoto
close access monfichier -- ferme le fichier

set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
write "Mes adresses mail" & return to lelog starting at eof
close access lelog

set separateur to {">", "<", " ", "(", ")", "[", "]"} -- Défini les séparateurs possible avant et après une adresse mail
set AppleScript's text item delimiters to ""
set nblignes to count of paragraph of vartoto
repeat with j from 1 to nblignes
    set vartoto1 to ""
    set vartoto1 to paragraph j of vartoto as string
    set la to offset of "@" in vartoto1
    if la = 0 then
    else -- Si la ligne contient un @
        set nbchar to count item of vartoto1
        set la1 to (la - 1)
        repeat
            
            if la = 0 then
                exit repeat
            else
                repeat
                    if item la1 of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set la1 to (la1 - 1)
                    if la1 = 0 then exit repeat
                end repeat
                
                set lafin to (la + 1)
                repeat
                    if item lafin of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set lafin to (lafin + 1)
                    if lafin = nbchar + 1 then exit repeat
                end repeat
                set adress to text (la1 + 1) thru (lafin - 1) of vartoto1
                
                set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
                write adress & return to lelog starting at eof
                close access lelog
            end if
            set vartoto1 to characters (la + 1) thru nbchar of vartoto1 as string
            set nbchar to count item of vartoto1
            set la to offset of "@" in vartoto1
            set la1 to (la - 1)
        end repeat
    end if
end repeat

tell application "Finder"
    set chemin to ((path to desktop folder) & "Les adresses mail.txt") as string
    set chemin to chemin as alias
end tell

tell application "Numbers"
    activate
    open chemin
    delay 3
    set nr1 to 2
    set nr2 to 3
    
    tell table 1 of sheet 1 of front document
        
        sort by column "a"
        
        try
            repeat
                set rang1 to nr1 as string
                set rang2 to nr2 as string
                set la1 to value of cell ("A" & rang1)
                set la2 to value of cell ("A" & rang2)
                if la2 = la1 then
                    remove row nr2
                    set nr1 to (nr1 - 1)
                    set nr2 to (nr2 - 1)
                end if
                set nr1 to (nr1 + 1)
                set nr2 to (nr2 + 1)
            end repeat
        end try
    end tell
    
    set chemin to ((path to desktop folder) & "Les adresses mail.numbers") as string
    save front document in file chemin
    quit
end tell


tell application "Finder"
    activate
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
 

digisi

Membre junior
26 Avril 2020
39
0
33
Bonjour,
Confinement oblige, je me suis occupé.
Le nouveau script te demande de choisir ton fichier texte à traiter
Il en extrait toutes les adresses mail dans un fichier texte sur le bureau du nom de "Les adresses mail.txt"
Il ouvre ensuite ce fichier dans numbers et supprime toutes les adresses en doubles et enregistre ce fichier sur le bureau au nom de "Les adresses mail.numbers" . Les adresses sont par ordre alphabétique (tri oblige pour suppression des doubles).
Il te met un message lorsqu'il a terminé.

La colonne A cellule A1 = "mes adresses mail"
Les cellules A2 et suivantes contiennent les adresses mail. (prêtent pour le script d'envoi de mail)
Chez moi cela fonctionne...
Donne un retour !

Bloc de code:
set monfichier to choose file with prompt "Sélectionner le fichier texte à traiter"
open for access monfichier -- ouvre ce fichier en lecture
set vartoto to read monfichier -- lit le fichier et le met dans la variable vartoto
close access monfichier -- ferme le fichier

set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
write "Mes adresses mail" & return to lelog starting at eof
close access lelog

set separateur to {">", "<", " ", "(", ")", "[", "]"} -- Défini les séparateurs possible avant et après une adresse mail
set AppleScript's text item delimiters to ""
set nblignes to count of paragraph of vartoto
repeat with j from 1 to nblignes
    set vartoto1 to ""
    set vartoto1 to paragraph j of vartoto as string
    set la to offset of "@" in vartoto1
    if la = 0 then
    else -- Si la ligne contient un @
        set nbchar to count item of vartoto1
        set la1 to (la - 1)
        repeat
         
            if la = 0 then
                exit repeat
            else
                repeat
                    if item la1 of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set la1 to (la1 - 1)
                    if la1 = 0 then exit repeat
                end repeat
             
                set lafin to (la + 1)
                repeat
                    if item lafin of vartoto1 is in separateur then
                        exit repeat
                    end if
                    set lafin to (lafin + 1)
                    if lafin = nbchar + 1 then exit repeat
                end repeat
                set adress to text (la1 + 1) thru (lafin - 1) of vartoto1
             
                set lelog to open for access ((path to desktop folder as text) & "les adresses mail.txt") as text with write permission
                write adress & return to lelog starting at eof
                close access lelog
            end if
            set vartoto1 to characters (la + 1) thru nbchar of vartoto1 as string
            set nbchar to count item of vartoto1
            set la to offset of "@" in vartoto1
            set la1 to (la - 1)
        end repeat
    end if
end repeat

tell application "Finder"
    set chemin to ((path to desktop folder) & "Les adresses mail.txt") as string
    set chemin to chemin as alias
end tell

tell application "Numbers"
    activate
    open chemin
    delay 3
    set nr1 to 2
    set nr2 to 3
 
    tell table 1 of sheet 1 of front document
     
        sort by column "a"
     
        try
            repeat
                set rang1 to nr1 as string
                set rang2 to nr2 as string
                set la1 to value of cell ("A" & rang1)
                set la2 to value of cell ("A" & rang2)
                if la2 = la1 then
                    remove row nr2
                    set nr1 to (nr1 - 1)
                    set nr2 to (nr2 - 1)
                end if
                set nr1 to (nr1 + 1)
                set nr2 to (nr2 + 1)
            end repeat
        end try
    end tell
 
    set chemin to ((path to desktop folder) & "Les adresses mail.numbers") as string
    save front document in file chemin
    quit
end tell


tell application "Finder"
    activate
    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell
Hello,

Désolé pour la réponse tardive, mais problème d'internet.
Alors pour le script d'envoi top et celui pour extraire pareil.
J'ai gagné beaucoup de temps sur ces taches rébarbatives.
Je réfléchis à d'autres façons d'optimisation de mon temps.
Par contre j'ai pensé a quelque chose concernant l'automatisation des mails, pourrait on l'améliorer en prenant un modèle de mail créé en signature (je viens d'y penser car la mise en page serait plus simple) ?
Au lieu de pointer sur le texte de la colonne B1 il choisirait une signature (1, 2, 3 ou autre)
Le schéma : copie de l'email, choix de la signature, envoi et X pour dire que c'est fait
Pour ce script notamment
Bloc de code:
tell application "Finder"
    set chemin to ((path to home folder) & "documents:script mail:liste.numbers") as string
    open chemin
    activate
end tell

tell application "Numbers"
    tell table 1 of sheet 1 of document "liste.numbers" -- voir document numbers
        set CR to (ASCII character 13) -- initialise un retour ligne
        set blabla to value of cell "B1" -- récupère le texte de la cellule E1
        set leslignes to 2 -- initialise le numéro de la première ligne des clients
        set nbmessage to 0
     
     
        repeat
            if nbmessage = 50 then exit repeat -- stop si 50 messages
            repeat
                set celtest to "B" & leslignes as string
                set letest to value of cell celtest -- controle si mail déja envoyé
                if letest = "X" then
                    set leslignes to leslignes + 1
                else
                    exit repeat
                end if
            end repeat
         
            set celmail to "A" & leslignes as string
         
         
            set lemail to value of cell celmail as string -- recupère le nom
            if lemail = "missing value" then -- vérifie si la derniere ligne
                exit repeat
            end if
         
         
            tell application "Mail"
                set contenu to "Bonjour, " & CR & CR & blabla -- prépare le contenu du mail
             
                set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu} -- prépare le mail
             
             
                tell newMessage
                    set toaddresslist to {lemail} -- prépare l'adressed'envoi
                    make new to recipient at end of to recipients with properties {address:toaddresslist} -- envoi le mail
                end tell
             
                send newMessage
                set nbmessage to nbmessage + 1 --compte le nombre de message envoyé
            end tell
            tell application "Numbers"
                tell table 1 of sheet 1 of document "liste.numbers"
                    set value of cell celtest to "X" -- renseigne numbers mail envoyé
                end tell
            end tell
            set leslignes to leslignes + 1 -- prépare numéro ligne suivante
        end repeat
    end tell
    save front document
    quit
end tell

Bonne journée,
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Bonjour,
Je ne vois pas pourquoi mettre des contenus de mail en signature pour aller ensuite choisir, serait plus simple ?

Si tu dois avoir plusieurs contenu de mail, alors simplement les créer dans les cellules de la prermière page de numbers en C1, C2, C3 etc... ou autres cellules à ta convenances, ou même écrire ces différents contenus dans des fichiers texte, (autant de fichiers que de modèle de mail) que le script irait chercher en fonction de tes besoins (tes critères de choix).
 

digisi

Membre junior
26 Avril 2020
39
0
33
Bonjour,
Je ne vois pas pourquoi mettre des contenus de mail en signature pour aller ensuite choisir, serait plus simple ?

Si tu dois avoir plusieurs contenu de mail, alors simplement les créer dans les cellules de la prermière page de numbers en C1, C2, C3 etc... ou autres cellules à ta convenances, ou même écrire ces différents contenus dans des fichiers texte, (autant de fichiers que de modèle de mail) que le script irait chercher en fonction de tes besoins (tes critères de choix).
En fait comme tu le dis c'est que j'ai 2 contenus de mails
  • Premier contact
  • Relance suite premier contact
Ensuite je suis en train de penser à me constituer une BDD numbers suite aux retours du premier mail, j'envisage de créer une colonne "Présentation" si par exemple je mets dans la cellule "Oui" penses tu qu'il serait possible d'envoyer un mail automatiquement avec une présentation plus personnalisée (soit dans la foulée ou en fin de journée une fois mon travail terminé)
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
On peut tout envisager, mon premier exemple envoyait des mails personnalisés avec Nom prénom contenu etc...

Il suffit dans ta feuille numbers de mettre des colonnes de contrôle d'envoi en en changeant la valeur après excécution de l'envoi.

Mais pour tout ça il faut avoir un projet bien pensé et mûr afin de construire tout en une foi, car chaque ajout devient du rafistolage qui fini par provoquer des bugs et du code à rallonge.

Mon avis est donc: Bien réfléchir à ce que l'on veux pour tout poser à plat, que l'objectif soit complet et clair, avant de commencer à écrire le code.
Bon courage...
 

digisi

Membre junior
26 Avril 2020
39
0
33
On peut tout envisager, mon premier exemple envoyait des mails personnalisés avec Nom prénom contenu etc...

Il suffit dans ta feuille numbers de mettre des colonnes de contrôle d'envoi en en changeant la valeur après excécution de l'envoi.

Mais pour tout ça il faut avoir un projet bien pensé et mûr afin de construire tout en une foi, car chaque ajout devient du rafistolage qui fini par provoquer des bugs et du code à rallonge.

Mon avis est donc: Bien réfléchir à ce que l'on veux pour tout poser à plat, que l'objectif soit complet et clair, avant de commencer à écrire le code.
Bon courage...
C'est justement ce sur quoi je travaille en ce moment.
Question, pour les scripts tu me les as adapté pour numbers mais si je suis amené a utiliser excel mac ou Open office par exemple est ce que c'est adaptable ?
Je te pose la question car c'est vrai qu'il est plus simple de créer une BDD dessus (enfin pour ma part).
Et je préfère demander avant de me lancer et me dire qu'au final ce n'est pas possible...
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Les scripts sont quand même fait pour automatiser les taches journalières répétitives.

Pour un projet professionnel, comme tu as l'air de le présenter maintenant, il vaudrait certainement mieux s'adresser à un programmeur professionnel.

Pour transposer sur excel cela sera certainement possible, mais vu qu'excel possède du VBA il vaudra mieux revoir complétement l'approche.
Quand à open office je ne connais pas du tout.

Dans tous les cas défini exactement ton besoin complet, ce sera à l'examen du projet complet que seront choisis les outils pour le réaliser, peut être un logiciel de base de données style Filemaker, Mysql ou autre...
 

digisi

Membre junior
26 Avril 2020
39
0
33
Les scripts sont quand même fait pour automatiser les taches journalières répétitives.

Pour un projet professionnel, comme tu as l'air de le présenter maintenant, il vaudrait certainement mieux s'adresser à un programmeur professionnel.

Pour transposer sur excel cela sera certainement possible, mais vu qu'excel possède du VBA il vaudra mieux revoir complétement l'approche.
Quand à open office je ne connais pas du tout.

Dans tous les cas défini exactement ton besoin complet, ce sera à l'examen du projet complet que seront choisis les outils pour le réaliser, peut être un logiciel de base de données style Filemaker, Mysql ou autre...
Bonjour,

Après réflexion, je vais alimenter BDD manuellement.
Sinon question concernant le script d'envoi, j'ai effectué des tests ce matin mais je n'avais pas fait attention mais ma signature de mail n'est pas prise en compte. Pourtant quand j'envoie un mail manuellement elle apparaît mais pas quand j'utilise le script.
Merci d'avance pour ta réponse.

Bon après-midi
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Bonjour,
Quand tu envois un mail manuellement tu utilises un modèle mail par défaut. Dans le script on construit le mail de toute pièce.

Lors de la préparation du mail dans le script il faut lui ajouter la signature.
cette ligne:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu} -- prépare le mail

devient:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu, message signature:"Nom de ta signature"} -- prépare le mail

En changeant, évidemment "Nom de ta signature" par le nom que tu as donné dans les préférences mail à la signature que tu veux utiliser.
 

digisi

Membre junior
26 Avril 2020
39
0
33
Bonjour,
Quand tu envois un mail manuellement tu utilises un modèle mail par défaut. Dans le script on construit le mail de toute pièce.

Lors de la préparation du mail dans le script il faut lui ajouter la signature.
cette ligne:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu} -- prépare le mail

devient:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu, message signature:"Nom de ta signature"} -- prépare le mail

En changeant, évidemment "Nom de ta signature" par le nom que tu as donné dans les préférences mail à la signature que tu veux utiliser.
Merci pour ta réponse rapide, j'ai effectué la modification mais en testant voila le message d'erreur.
Capture d’écran 2020-05-08 à 16.08.30.png
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Quel est le nom exact de ta signature dans préférences de mail?
Là j'ai du mal car je n'uitise pas mail , mais outloock donc je peux pas tester...

Edit: d'après ce que j'ai pu trouver sur le net, le fonctionnement de signature est différent sur mail et outloock.
Donc j'ai modifié le script dans lequel j'ai appelé la signature "signature #1" Sera à adapter (si ça fonctionne)
J'ai mis les 2 nouvelles lignes de code en rouge.
J'attends ton retour.

Bloc de code:
tell application "Finder"
    set chemin to ((path to home folder) & "documents:script mail:liste.numbers") as string
    open chemin
    activate
    delay 3
end tell

tell application "Numbers"
    set lafeuille to 1
    set CR to (ASCII character 13) -- initialise un retour ligne
    set nbmessage to 0
    set leslignes to 2 -- initialise le numéro de la première ligne des clients
    set lasuite to 1
    repeat
        tell table 1 of sheet lafeuille of document "liste.numbers" -- voir document numbers
            set blabla to value of cell "B1" -- récupère le texte de la cellule E1
            set leslignes to 2 -- initialise le numéro de la première ligne des clients
        end tell
       
       
        if nbmessage = 50 then exit repeat -- stop si 50 messages
       
        tell table 1 of sheet lasuite of document "liste.numbers" -- voir document numbers
           
            repeat
                set celtest to "B" & leslignes as string
                set letest to value of cell celtest -- controle si mail déja envoyé
                if letest = "X" then
                    set leslignes to leslignes + 1
                else
                    exit repeat
                end if
            end repeat
           
            set celmail to "A" & leslignes as string
            set celsuite to "A" & (leslignes + 1) as string
            set suite to value of cell celsuite
           
            set lemail to value of cell celmail as string -- recupère le nom
            if lemail = "missing value" then -- vérifie si la derniere ligne
                exit repeat
            end if
        end tell
       
        tell application "Mail"
            set contenu to "Bonjour, " & CR & CR & blabla -- prépare le contenu du mail
            set Masignature to "signature #1"
            set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu} -- prépare le mail
           
           
            tell newMessage
                set toaddresslist to {lemail} -- prépare l'adressed'envoi
                make new to recipient at end of to recipients with properties {address:toaddresslist} -- envoi le mail
                set message signature of newMessage to signature Masignature
               
                send newMessage
            end tell
            set nbmessage to nbmessage + 1 --compte le nombre de message envoyé
        end tell
        tell application "Numbers"
            tell table 1 of sheet lasuite of document "liste.numbers"
                set value of cell celtest to "X" -- renseigne numbers mail envoyé
               
                if suite = "fin" then
                    set lasuite to lasuite + 1
                    set leslignes to 1
                end if
               
            end tell
        end tell
        set leslignes to leslignes + 1 -- prépare numéro ligne suivante
    end repeat
   
    save front document
    quit
end tell
 
Dernière édition:

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Mince la couleur n'est pas prise en compte: les 2 nouvelles lignes sont:

set Masignature to "signature #1"
set message signature of newMessage to signature Masignature

Mais je ne suis pas convaincu que cela fonctionne ! :banghead:
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Rien trouvé de concluant.
--1ere solution : incorporer ta signature dans le mail en cellule B1 (le plus simple)
--2ieme solution à essayer: La signature étant définie et affectée à un compte d'envoi dans les préférences de mail, ajouter dans le script que ce soit ce compte qui soit utilisé pour l'envoie.

cette ligne:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu} -- prépare le mail

devient:

set newMessage to make new outgoing message with properties {subject:"Sujet", content:contenu, sender:"adressemailducompteàutiliser"} -- prépare le mail

En changeant, évidemment "adressemail ducompteàutiliser" par l'adresse mail que tu veux utiliser "xxxxxxx@xxxx.xv".
 

zeltron54

Membre d’élite
29 Mars 2008
2 150
335
Lorraine
Après bien des recherches sur le net, rien trouvé de correct, cela ressemble à un bug dans le dictionnaire de l'appli mail.

Je te conseille donc d'incorporer ta signature dans le corps du message. Rien de mieux à te proposer pour le moment.
 

digisi

Membre junior
26 Avril 2020
39
0
33
Après bien des recherches sur le net, rien trouvé de correct, cela ressemble à un bug dans le dictionnaire de l'appli mail.

Je te conseille donc d'incorporer ta signature dans le corps du message. Rien de mieux à te proposer pour le moment.
Hello,

J'allais justement te faire un retour la meilleure solution est la signature dans le corps du message, j'ai testé et re testé le script c'est parfait. Je te ferais un retour fin de semaine prochaine suite à la première vague d'envois.
Encore merci pour ta disponibilité et ton aide.

Bonne soirée,