Mails à plusieurs destinataires

Bonjour,

Je reviens vers vous car je n’y arrive avec la précédente réponse du mois dernier.
Je voudrais envoyer un mail identique à plusieurs destinataires avec un lien hypertexte dans une cellule et avec le courrieleur thundebird. Merci d’avance
essai publipostage.xlsx (8,6 Ko)

Bonjour
Sur la base d’une procédure en ma possession concernant l’envoi de mail via l’application de messagerie « Thumderbird » je te joins cette proposition que je n’ai pas testé n’ayant pas cette messagerie sur mon PC
Testes et fais moi un retour

Attention fichier de type « .xlsm » nécessaire pour le fonctionnement VBA à maintenir impérativement
Le fichier avant ouverture doit être débloqué (clique droit sur le fichier item Propriétés pavé Sécurité côcher « Débloquer »)

essai publipostage.xlsm (17,8 Ko)

Bonjour,

Merci pour votre aide mais quand je clique sur le bouton mail, j’ai un message d’erreur erreur d’execution 53.
Encore merci de votre aide.


image

Bonjour

C’est certainement l’adresse du fichier décrit quelques lignes avant qui doit être incorrect sur celle-ci :

Strcommand = « C:\Program Files\Mozilla Thunderbird\thunderbird »

Il faut rechercher dans tes répertoires le fichier « thunderbird » qui est un programme de l’application Thumderbird que tu doit avoir si celui-ci est installé sur ton PC

Une fois repéré actualises cette ligne de code du chemin de celui-ci
Puis refais un test

Tiens moi informé du résultat de cette recherche

l’idée est le même que FFO et comme vous le voyez, mon chemin est C:\Program Files (x86). Mais, il y a aussi un ’ supplémentaire pour commencer et terminer un variable.

 Strcommand = "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe " & _
           "-compose " & """" & _
           "to='" & email & "'," & _
           "cc='" & cc & "'," & _
           "bcc='" & bcc & "'," & _
           "subject='" & subj & "'," & _
           "body='" & body & "'"

Bonjour,

ca fonctionne bien modifiant le chemin de thundebird, super et merci.
Mias j’ai un petit souci, je n’ai que le bonjour qui s’affiche dans le courrier que je veux envoyer et pas le texte en entier.
Autre chose, comment je fais pour ajouter un fichier joint avec le code vba?
Merci d’avance.

cet icon
image

Bonjour
Merci pour ce retour

« Mias j’ai un petit souci, je n’ai que le bonjour qui s’affiche dans le courrier que je veux envoyer et pas le texte en entier. »

Ici en cellule B1 le sujet du mail en B2 le corp du mail à actualiser selon le besoin surtout sans virgule à l’origine de ta déconvenue car le « Bonjour » et suivi d’une virgule :

"Bonjour, Veuillez en PJ la fiche d’activation ou de désactivation des mesures "

« Autre chose, comment je fais pour ajouter un fichier joint avec le code vba? »

En début de code mets cette ligne :

fichierjoint = "C:\chemin\monfichier"

en fin de code juste avant cette ligne :

Call Shell(strcommand, vbNormalFocus)

mettre ceci :

strcommand = strcommand & "," & "attachment=file:///" & fichierjoint

Ce qui donne en fin de traitement ceci :

strcommand = strcommand & "," & "attachment=file:///" & fichierjoint
Call Shell(strcommand, vbNormalFocus)

Testes et dis moi

Si Ok n’oublies pas de valider ma proposition un plus bien agréable

Bonjour,

Grâce à votre aide , j’ai pu ajouté le fichier joint nickel mais j’ai toujours que le bonjour quand j’envoie le mail aux destinataires.
et autre chose, mon fichier comprend 2 feuilles dont 1 avec une feuille explicative et l’autre feuille ou se trouve les adresses mail et le sujet et le texte du message.
je voudrais le botuon mail dans la premiere feuille, esct ce possible malgre que les adresses mails sont dans la deuxieme feuille.
Apres j’arrete vous embeter, et encore à un grand merci car je suis presque au but .

« mais j’ai toujours que le bonjour quand j’envoie le mail aux destinataires. »

As tu supprimé la virgule après le « Bonjour » en cellule « B2 » ???

« mon fichier comprend 2 feuilles dont 1 avec une feuille explicative et l’autre feuille ou se trouve les adresses mail et le sujet et le texte du message.
je voudrais le botuon mail dans la premiere feuille, esct ce possible malgre que les adresses mails sont dans la deuxieme feuille. »

Adaptes ces lignes de code :

i = 2
Do While i < Range("A" & Rows.Count).End(xlUp).Row + 1
destinataire = destinataire & Range("A" & i) & ";"
i = i + 1
Loop

Comme ceci :

i = 2
Do While i < Sheets("nom de la feuille").Range("A" & Rows.Count).End(xlUp).Row + 1
destinataire = destinataire & Sheets("nom de la feuille").Range("A" & i) & ";"
i = i + 1
Loop

remplaces « nom de la feuille » par celui à utiliser

Attention les noms sont en en colonne « A » dans cette nouvelle feuille à partir de la ligne 2

Fais moi un retour

quelle absurdité, aucune virgule dans le body !!! :broken_heart:

Envoie un fichier !

Hello
avec, au départ, un fichier ressemblant au maximum au fichier original et avec une quinzaine de données anonymisé, il n’y aurait pas eu à reprendre le code X fois…
Enfin, je dis ça, je ne dis rien !

Bonjour,
Ca fonctionne avec le bouton dans la feuille principale mais je n’ai pas le sujet et le corps du message quand je clique sur le bouton de la feuille princiaple.
Mais en tous les cas , merci de votre aide.

Pour le sujet et le corps du mail si ils sont situés sur un autre onglet que celui du bouton adapes ces lignes de code

sujet = Range("B1")
body = Range("B2")

Comme ceci :

sujet = Sheets("nom de la feuille").Range("B1")
body = Sheets("nom de la feuille").Range("B2")

Remplaces « nom de la feuille » par celui de l’onglet approprié

Les données doivent être dans cet onglet pour le sujet en cellule « B1 » pour le corps du mail en cellule « B2 »
Attention virgule à proscrire

Essaies et dis moi

Re,

Pour vous dire que tout fonctionne, et merci à toi et à toute la communauté pour votre aide.
J’espre que cela pourra aider d’autres personnes.
Bonne journée.

Merci merci pour ce retour positif
Je suis ravi de ce succès
N’oublies pas de valider ma réponse c’est toujours un petit plus agréable
Au plaisir une prochaine fois de t’aider à nouveau

re
, j’ai crié victoire trop tôt, en fait, en fait j’ai adapté ce modèle à un autre fichier et je n’ai que 6 destinataires alors que j’en une vingtaine normalement.

Fais un essai avec le fichier qui fonctionne en intégrant les 20 destinaires dans la liste appropriée et de faire un test
Si celui-ci infructueux transmets moi le que je regarde

je ne peux pas transmettre le fichier car confidentiel.
c’est bizarre avec le bouton dans le fichier original, j’ai bien tous les 20 destinataires et c’est quand j’ai voulu creer un fichier et mettre le bouton envoi sur la feuille principale que ca fonctionne pas.

Attention au paramétrage du bouton peut-être à reprogrammer surtout si tu as réalisé un copier/coller de celui-ci
Refais un clique droit dessus choisis « Affecter une macro » et sélectionnes avec la souris dans la liste la macro « Mail » puis « OK »

Mets bien à jour cette partie :

i = 2
Do While i < Range("A" & Rows.Count).End(xlUp).Row + 1
destinataire = destinataire & Range("A" & i) & ";"
i = i + 1
Loop

Comme ceci :

i = 2
Do While i < Sheets("nom de la feuille").Range("A" & Rows.Count).End(xlUp).Row + 1
destinataire = destinataire & Sheets("nom de la feuille").Range("A" & i) & ";"
i = i + 1
Loop

en modifiant « nom de la feuille » par le nom de l’onglet approprié

Attention les noms sont en en colonne « A » dans cette nouvelle feuille à partir de la ligne 2

et cette partie :

sujet = Range("B1")
body = Range("B2")

Comme ceci :

sujet = Sheets("nom de la feuille").Range("B1")
body = Sheets("nom de la feuille").Range("B2")

en modifiant « nom de la feuille » par le nom de l’onglet approprié

Les données doivent être dans cet onglet pour le sujet en cellule « B1 » pour le corps du mail en cellule « B2 »
Attention virgule à proscrire

Réessaies
Fais moi un retour