XL 2010 Envoyer par mail avec Thunderbird des fichiers pdf

jeanmi

XLDnaute Occasionnel
Bonjour à tous,

Je cherche une solution pour pouvoir exporter des factures créées à partir d’Excel et converties en PDF, qui ont été sauvegardées dans un répertoire sur mon DD.

J’ai la liste des noms et les adresses mail des factures créées dans une feuille Excel.

Je n’ai pas trouvé de solution, on parle beaucoup de Outlook mais pas de Thunderbird.

Merci d’avance pour l’aide.

Cordialement
 

kiki29

XLDnaute Barbatruc
Salut, ou via CDO ?
sans oublier RdB
Pourquoi utiliser le code CDO au lieu de l'automatisation Outlook ou SendMail dans VBA.
1 : Peu importe le programme de messagerie que vous utilisez (il utilise uniquement le serveur SMTP).
2 : Peu importe la version d'Office que vous utilisez (97…2016)
3 : Vous pouvez envoyer une plage/feuille dans le corps du courrier (certains programmes de messagerie ne peuvent pas le faire)
4: Vous pouvez envoyer n'importe quel fichier que vous aimez (fichiers Word, PDF, PowerPoint, TXT,….)
5 : Aucun avertissement de sécurité, vraiment génial si vous envoyez beaucoup de courrier en boucle.
 

jeanmi

XLDnaute Occasionnel
Bonjour Jeanmi,
Une PJ qui pourra peut être vous intéresser.
Envoi de mail par Thunderbird avec deux PJ. A adapter.
Bonjour #sylvanu à tous,
ça fonctionne nickel, mais il faut que je valide l'envoi manuellement , c'est normale ou je n'ai pas bien modifié le code ?
il y a la ligne (sujet = "Fichier " & Range("D9").Value) j'ai pas compris ce qu'il faut faire.
voici le code modifié.

VB:
Sub EnvoiMailParThunderBird_1()
Dim destinataire, sujet, fichierjoint As String
destinataire = "fricheteau.marie@free.fr"
sujet = "Fichier " & Range("D9").Value

text1 = " Bonjour " & "<br>"
text2 = "<br>"
text3 = " Je te prie de trouver ci-joint le fichier FACTURE en pdf " & "<br><br>"
text4 = "Bien Cordialement" & "<br><br>"
text5 = "JeanMi" & "<br><br>"
text6 = "Tél.: 01-01-01-01-01"

Body = text1 & text2 & text3 & text4 & text5 & text6

fichierjoint1 = "C:\Users\FACTURE_1.pdf"

'fichierjoint1 = "C:\Users\PC_PAPA\Desktop\File1.pdf"    ' Premier fichier à joindre
'fichierjoint2 = "C:\Users\PC_PAPA\Desktop\File2.pdf"    ' Second fichier à joindre

strcommand = "C:\Program Files (x86)\Mozilla Thunderbird\Thunderbird.exe"
strcommand = strcommand & " -compose " & "to='" & destinataire & "'"
strcommand = strcommand & "," & "subject=" & sujet & ","
strcommand = strcommand & "body=" & Body
strcommand = strcommand & "," & "attachment='file:///" & fichierjoint1 & "'"
'strcommand = strcommand & ",file:///" & fichierjoint2 & "'"

'MsgBox strcommand

Call Shell(strcommand, vbNormalFocus)

End Sub

Merci pour les réponses.
Bien cordialement
 

jeanmi

XLDnaute Occasionnel
Re,

Cela signifie simplement que j'utilise la cellule D9 comme sujet. C'était de qui était prévu.
Ensuite, oui, le mail est à envoyer manuellement pour toujours conservé un aperçu avant envoi.
re bonjour,

dans mon cas j'ai environ 100 factures à envoyer, donc y a t-il possibilité de faire l'envoi directement sans passer par l'étape manuelle ?
Merci pour la réponse

Cordialement
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
faire l'envoi directement sans passer par l'étape manuelle
Essayez avec à la fin plutôt :
VB:
Call Shell(strcommand, vbNormalNoFocus)
SendKeys "^{ENTER}", True
'Application.Wait (Now + TimeValue("0:00:03")) ' A mettre eventuellement entre deux envois pour temporisation.
End Sub
Testé sans le Application.Wait, il peut être utile s'il y a plein mails à envoyez pour faire une tempo entre deux opérations.
 

jeanmi

XLDnaute Occasionnel
Essayez avec à la fin plutôt :
VB:
Call Shell(strcommand, vbNormalNoFocus)
SendKeys "^{ENTER}", True
'Application.Wait (Now + TimeValue("0:00:03")) ' A mettre eventuellement entre deux envois pour temporisation.
End Sub
Testé sans le Application.Wait, il peut être utile s'il y a plein mails à envoyez pour faire une tempo entre deux opérations.
re bonjour #sylvanu à tous,

je m'excuse, c'est encore moi, j'ai testé avec l'ajout de ton code et ça ne change rien il faut que je valide les envois .

De plus, j'ai remarqué que lorsque je lance le code mon pavé numérique se retrouve désactivé ???? pas avant l'ajout de ces nouvelle ligne, si ça peut orienter le pourquoi.

Merci pour les réponse.
cordialement
 
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
Je viens de retester et effectivement on peut avoir un souci suivant la configuration, ça, je ne connaissais pas:
- Thunderbird est ouvert et visible à l'écran. Le mail est bien envoyé en automatique.
- Thunderbird est ouvert et réduit dans la barre de tache, alors le mail n'est pas envoyé et attend une confirmation.
Mais comme j'ai deux écrans et Thunderbird visible je n'ai jamais rencontré ce problème.
Essayez avec Thunderbird visible ça doit marcher.
Par contre je n'ai pas de solution si votre Thunderbird est réduit dans la barre des taches.
 

jeanmi

XLDnaute Occasionnel
Bonsoir,
Je viens de retester et effectivement on peut avoir un souci suivant la configuration, ça, je ne connaissais pas:
- Thunderbird est ouvert et visible à l'écran. Le mail est bien envoyé en automatique.
- Thunderbird est ouvert et réduit dans la barre de tache, alors le mail n'est pas envoyé et attend une confirmation.
Mais comme j'ai deux écrans et Thunderbird visible je n'ai jamais rencontré ce problème.
Essayez avec Thunderbird visible ça doit marcher.
Par contre je n'ai pas de solution si votre Thunderbird est réduit dans la barre des taches.
re

j'ai testé avec fenêtre ouverte en grand, réduite, pas ouverte et pas démarré , ça ne change rien.
il faut valider les mails pour partir.

De plus, j'ai remarqué que lorsque je lance le code mon pavé numérique se retrouve désactivé ???? pas avant l'ajout de ces nouvelle ligne, si ça peut orienter le pourquoi.
 

kiki29

XLDnaute Barbatruc
Salut, pour le Pavé numérique : ne pas utiliser SendKeys avec l'objet Application.
mais avec l'objet wscript.shell, par exemple :
VB:
 CreateObject("wscript.shell").SendKeys "abc"

Bis repetita placent : CDO ?
Pourquoi utiliser le code CDO au lieu de l'automatisation Outlook ou SendMail dans VBA.
1 : Peu importe le programme de messagerie que vous utilisez (il utilise uniquement le serveur SMTP).
2 : Peu importe la version d'Office que vous utilisez (97…2016)
3 : Vous pouvez envoyer une plage/feuille dans le corps du courrier (certains programmes de messagerie ne peuvent pas le faire)
4: Vous pouvez envoyer n'importe quel fichier que vous aimez (fichiers Word, PDF, PowerPoint, TXT,….)
5 : Aucun avertissement de sécurité, vraiment génial si vous envoyez beaucoup de courrier en boucle.
 
Dernière édition:

jeanmi

XLDnaute Occasionnel
Chez moi ça marche correctement donc difficile de dire pourquoi chez vous ce n'est pas le cas.
Peut être un problème de config. La mienne est :
Win10, Thunderbird 91.10.0 et XL2007.
Bonjour #sylvanu "kiki229 à tous,

et pour moi la configuration est :
Win10, Thunderbird 91.10.0 (32 bits) et XL2010.

j'ai appliqué le conseille de #kiki19 et plus de désactivation du pavé numérique, mais les messages ne partent toujours pas sans validation manuelle.

si vous avez des idées, n'hésitez pas, je vais faire avec pour le moment en validant manuellement, c'est déjà très bien.

Merci encore de l'aide
Cordialement
 

Lolote83

XLDnaute Barbatruc
Bonjour à tous, @jeanmi , @sylvanu , @kiki29 ,

J'arrive un peu tard dans la discussion, mais voici ce que j'ai réussi à concocter en prenant de droite et de gauche des exemples pour la rédaction de mes mails sous thunderbird.

Ce fichier utilise un tableau structuré composant le corps du mail avec quelques paramètres comme :
- Gras
- Italique
- Soulignement

avec aussi couleur
- Noir (défaut)
- Bleu
- Rouge

et avec une taille de police (1 à 7)
Je pense que le code peut encore être optimisé, mais

A tester chez vous, chez moi cela fonctionne tel quel, mais il y a parfois des buggs car il faut 4 guillemets, 3 ou 2.
C'est pas toujours facile.

Attention, penser à changer le chemin de la PJ pour tester (cellule J10).

Par contre, toujours impossible d'envoyer directement, il faut ensuite cliquer sur le bouton Envoyé.

@+ Lolote83
 

Pièces jointes

  • Copie de JEANMI - Mail_Thunderbird.xlsm
    78.3 KB · Affichages: 5

Discussions similaires

Statistiques des forums

Discussions
312 069
Messages
2 085 041
Membres
102 764
dernier inscrit
nestu