envoi pièce jointe avec thunderbird impossible

SALAH

XLDnaute Occasionnel
Bonjour le forum

chez moi avec ce code pour envoyer un mail par Outlook cela marche très bien
mais dans mon travail on utilise thunderbird et je n'arrive à insérer la pièce jointe créee en pdf
Il s' agit d' une feuille excel qui se transforme en pdf pour être envoyée
et là je bloque

Pourriez-vous m' aider svp . je vous envoye le code que j utilise chez moi
mais qui n' a pas un grand intéret dans mon lieu de travail

Merci pour votre aide




Private Sub CommandButton4_Click() ' Envoi Facture par mail

Dim fichier$, fichier2$
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object

Sheets("Facture").ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveWorkbook.Path & "\" & "Facture.pdf"
LeFichier = ActiveWorkbook.Path & "\" & "Facture.pdf"
'==========Début d'ouverture de la nouvelle session de OutLook====================
Set objOL = CreateObject("Outlook.Application")
Set objMail = objOL.CreateItem(olMailItem)
With objMail
.To = Sheets("Devis").Range("Ctrl11").Text '.........le destinataire.....
.Subject = ("Facture") '........l'objet du mail
.Attachments.Add LeFichier '...ajout de la feuille active.....
.Body = "Veuillez trouvez ci-joint votre devis" & vbNewLine & vbNewLine & _
"Nous restons entierement à votre disposition" & vbNewLine & _
"Votre Responsable Commercial" & vbNewLine & _
"Cordialement" & vbNewLine & _
"" & vbNewLine & _
"" & vbNewLine & _
"SDI" & vbNewLine & _
objMail.Display
'.Send
End With

End Sub
 

mromain

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

Bonjour SALAH, le forum,


Cela ne semble pas évident de piloter Thunderbird en VBA...
On peut néanmoins créer le mail (mais pas l'envoyer) en passant des paramètres à la commande Thunderbird.

Ci-joint un exemple avec une classe Cls_MailThunder et le code suivant dans un module standard qui permet de créer le mail. Ensuite, l'utilisateur devra quand même l'envoyer.
VB:
Sub TestMail()
Dim mailThunder As Cls_MailThunder
    
    Set mailThunder = New Cls_MailThunder
    
    'Séparer les destinataires et les PJ par des virgules
    
    With mailThunder
    
        .Identite = 2       'Identité Thunderbird à utiliser (optionnel, permet par exemple de prendre une identité avec une signature particulière)
        
        .MailTo = "toto.tata@tutu.tu,toto.titi@tutu.tu"
        .MailCc = "toto.tete@tutu.tu"
        .MailBcc = "toto.toto@tutu.tu"
        
        .Subject = "Message de test"
        .Body = "Bonjour" & vbNewLine & vbNewLine & "Message de test"
        
        .Attachments = "C:\Fichier1.txt,C:\Fichier2.txt,C:\Fichier3.txt"
        
        .DisplayMail
    End With
    
End Sub

A+
 

Pièces jointes

  • MailThunderbird.xlsm
    22.1 KB · Affichages: 80

SALAH

XLDnaute Occasionnel
Re : envoi pièce jointe avec thunderbird impossible

Bonjour le forum, bonjour mromain, bonjour doublezero
C 'est très bien mais il y a trop de manipulation, je n' arrive pas à l 'adapter à mon fichier car en fait l' idéal c' est qu il ressemble au code que j' ai noté au dessus

Merci
 

SALAH

XLDnaute Occasionnel
Re : envoi pièce jointe avec thunderbird impossible

Bonjour le forum, bonjour mromain, bonjour doublezero

j' essaye d adapter ce code mais sa bug



Private Sub CommandButton7_Click() ' Envoi Devis par mail

Dim destinataire, sujet, body, Lefichier
Dim strCommand As String

destinataire = "ss@free.fr" "je dois effacer cette ligne pour la remplacer par celle en dessous
.To = Sheets("Devis").Range("Ctrl11").Text la feuille à envoyer se trouve dans un onget "devis" et le destinataire se
trouve dans la Cellule " Ctrl11"


sujet = "test"
body = "test corps"



Sheets("Facture").ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveWorkbook.Path & "\" & "Facture.pdf"
Lefichier = ActiveWorkbook.Path & "\" & "Facture.pdf" "transformation de la feuille en pdf puis envoi"


strCommand = "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird"
strCommand = strCommand & " -compose " & "mailto:" & destinataire & "?"
strCommand = strCommand & "subject=" & sujet & Chr$(34) & "&"
strCommand = strCommand & "attachments=" & Lefichier & "&" "je pense ici qu il y a une erreur sur cette ligne"
strCommand = strCommand & "body=" & body

Call Shell(strCommand, vbNormalFocus)

End Sub


Merci pour votre aide
 
Dernière édition:

DoubleZero

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

Bonjour à toutes et à tous,

@ SALAH,

Sur mon poste, les travaux de mromain, Roland_M et conil26 donnent un résultat parfait.

Un essai... à adapter... en pièce jointe.

A bientôt :)
 

Pièces jointes

  • 00 - SALAH - Mail Thunderbird + PJ.xls
    58.5 KB · Affichages: 81

SALAH

XLDnaute Occasionnel
Re : envoi pièce jointe avec thunderbird impossible

Bonjour le forum, bonjour mromain, bonjour doublezero

fichierjoint = "C:\Users\00\Downloads\Facture.pdf" ' à adapter
strCommand = "C:\Program Files (x86)\Mozilla Thunderbird\Thunderbird"
strCommand = strCommand & " -compose " & "to='" & destinataire & "'"
strCommand = strCommand & "," & "bcc='" & leMail2$ & "'"
strCommand = strCommand & "," & "subject='" & sujet & "'"
strCommand = strCommand & "," & "format='" & 1 & "'"
strCommand = strCommand & "," & "body='" & body & "'"
strCommand = strCommand & "," & "attachment=file:///" & fichierjoint
Call Shell(strCommand, vbNormalFocus)

Je vous remercie à tous mais je voudrais soulevé certains problèmes

- Comment peut-on modifié la ligne qui permet de joindre le fichier sachant que la feuille à envoyer se trouve dans le classeur actif ?

J' ai dû utiliser 2 ordis pour arriver à mes fins avec W7 ( l' un m' ouvre thunderbird avec un vide total à l interieur : sans corps et sans piece jointe) et l autre qui m affiche le tout. y a t il quelque chose à activer dans les preferences ?

Pour finir y a t il un soucis si on utilise ce code avec W8 ?

Merci pour vos reponses

A+
 

DoubleZero

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

Bonjour à toutes et à tous,

Ceci :

...Comment peut-on modifié la ligne qui permet de joindre le fichier sachant que la feuille à envoyer se trouve dans le classeur actif ?...

me semble opposé à cela :

...je n'arrive à insérer la pièce jointe créee en pdf...

Le code qui accompagne le fichier déposé en #8 récupère le document créé en .PDF, préalablement enregistré dans les "Téléchargements".

...J' ai dû utiliser 2 ordis pour arriver à mes fins avec W7 ( l' un m' ouvre thunderbird avec un vide total à l interieur : sans corps et sans piece jointe) et l autre qui m affiche le tout. y a t il quelque chose à activer dans les preferences ?...

Je ne me rappelle pas avoir procédé à des manipulations particulières.

...Pour finir y a t il un soucis si on utilise ce code avec W8...

Le code fonctionnait parfaitement avec W7 et ne pose aucune difficulté avec W8.

Bon courage et à bientôt :)
 

SALAH

XLDnaute Occasionnel
Re : envoi pièce jointe avec thunderbird impossible

Bonjour le forum, bonjour mromain, bonjour doublezero

Doublezero tu es bien matinale
Que doit je mettre pour récupérer la pièce jointe ?

fichierjoint = Sheets("Devis") ou
fichierjoint = ActiveWorkbook.Path & "\" & "Facture

la syntaxe est-elle juste ?

Mais j' ai toujours une ouverture de thunderbird en page vierge aucune information à l' intérieur
j' utilise W8 dans mon lieu de travail

Merci
 

DoubleZero

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

Re-bonjour,

...Que doit je mettre pour récupérer la pièce jointe ?..

...j' ai toujours une ouverture de thunderbird en page vierge aucune information à l' intérieur
j' utilise W8 dans mon lieu de travail...

Le code du fichier joint est assorti de quelques commentaires.

Comme précisé en #10, l'envoi fonctionne parfaitement sur mon poste (W8, actuellement, et W7, auparavant).

Si les difficultés persistent :(, attendons l'intervention salvatrice :eek: d'autres membres.

A bientôt :)
 

Pièces jointes

  • 00 - SALAH - Mail Thunderbird + PJ (commentaires).xls
    66 KB · Affichages: 73

SALAH

XLDnaute Occasionnel
Re : envoi pièce jointe avec thunderbird impossible

Bonjour le forum, bonjour mromain, bonjour doublezero

doublezero

Dim destinataire, sujet, fichierjoint As String
Dim leNumero As String
Dim Filename As String
'onglet "Facture" exporter en .PDF

Sheets("Facture").ExportAsFixedFormat Type:=xlTypePDF, Filename:=ActiveWorkbook.Path & "\" & "Facture.pdf"
fichierjoint = ActiveWorkbook.Path & "\" & "Facture.pdf"

'destinataire = cellule a7 de l'onglet "Devis"
destinataire = Sheets("Devis").Range("a7") ' à adapter
'texte du message
sujet = "Facture"
text1 = "Veuillez trouvez ci-joint votre devis." & "<br><br>"
text2 = "Nous restons entièrement à votre disposition." & "<br><br>"
text3 = "Votre Responsable Commercial." & "<br><br>"
text4 = "Cordialement," & "<br><br>"
text5 = "BSI" & "<br>"
Body = text1 & text2 & text3 & text4 & text5
'pièce jointe : emplacement et nom du répertoire à adapter

strcommand = "C:\Program Files (x86)\Mozilla Thunderbird\Thunderbird"
strcommand = strcommand & " -compose " & "to='" & destinataire & "," ' Le destinataire
strcommand = strcommand & "'" & "," & "'"
strcommand = strcommand & "," & "subject=" & sujet & ","
strcommand = strcommand & "," & "body='" & Body & "," 'Corps du message
strcommand = strcommand & "," & "attachment=file:///" & fichierjoint ' Piece-jointe

Call Shell(strcommand, vbNormalFocus)
End Sub



l' approche se fait petit à petit

Pour avoir l' affichage du corps du message j' ai dû changer certains "'" en "," et par miracle tout apparait voir code ci-dessus

Par contre il y a un hic au niveau de la pièce jointe qui ne veut pas se placer dans thunderbird
je ne comprends pourquoi il faut créer un chemin pour pouvoir récupérer la pièce jointe sachant que c' est la feuille active du classeur qui doit se transformer en pdf et s' afficher en pièce jointe

Merci pour toute votre aide
 

DoubleZero

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

Bonjour à toutes et à tous,

...Pour avoir l' affichage du corps du message j' ai dû changer certains "'" en "," et par miracle tout apparait voir code ci-dessus...

Je n’en comprends pas la raison. Quoi qu’il en soit, si cela fonctionne de la sorte, c’est l’essentiel.

...Par contre il y a un hic au niveau de la pièce jointe qui ne veut pas se placer dans thunderbird
je ne comprends pourquoi il faut créer un chemin pour pouvoir récupérer la pièce jointe sachant que c' est la feuille active du classeur qui doit se transformer en pdf et s' afficher en pièce jointe...

Pourquoi ? Le motif m’échappe !

J’ose espérer ne pas « dire » d’ânerie :rolleyes: en prétextant qu’un onglet transformé en .pdf doit être enregistré dans un fichier avant d’être inséré en pièce jointe d’un message.

A court d’idée sur les problèmes évoqués – non rencontrés sur mon poste – je donne, à présent, ma langue au chat et, comme évoqué en #12, attendons l’avis des artistes :D du site.

A bientôt :)
 

Si...

XLDnaute Barbatruc
Re : envoi pièce jointe avec thunderbird impossible

salut

Facture ou Devis ? Sauvegarder qui et où ? Envoyer quoi ?
Un essai à partir du dernier fichier joint (merci et salut l'artiste OO ;):D) en commençant par bien indiquer le chemin du répertoire de Thunderbird !
 

Pièces jointes

  • Mail Thunderbird avec PJ (en PDF).xls
    241.5 KB · Affichages: 79

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 292
Membres
103 171
dernier inscrit
clemm