Je dois envoyer un tableau Excel avec des informations assez régulièrement. Afin d'automatiser le tout, j'ai créé un bouton d'envoi qui permet de préparer le mail avec le tableau, les destinataires, l'objet, etc. Bref tout !
Le code fonctionne parfaitement, mais le fichier Excel étant assez lourd, j'essaie de m'orienter sur un copier/coller du tableau dans le corps du mail, plutôt qu'une pièce jointe, qui demande d'autre lignes de code (suppression puis création automatique du bouton d'envoi, camouflage d'autres feuilles de classeur, sauvegarde du fichier, etc.).
Malheureusement, après maintes recherches, je n'arrive pas à obtenir autre chose qu'un "Vrai" à la place du tableau, dans le mail.
Voici mon code VBA actuel :
Sub EnvoiADU()
Dim OutApp As Object Dim OutMail As Object Dim strbody1 As String Dim strbody3 As String
Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0)
strbody1 = "<font face=Times New Roman color=#000000 size=3><div>Bonjour,<br><br>Veuillez trouver ci-dessous le tableau des personnels non à jour systématique au 1er " & Format(Date + 60, "mmmm yyyy") & ".<br><br></div></FONT></label>" strbody2 = Range("A4:F10").PasteSpecial(skipblanks = True) strbody3 = "<font face=Times New Roman color=#000000 size=3><div><br><br>Respectueusement,</div></FONT></label>" On Error Resume Next
With OutMail .Display .To = "XXX@XXX.XX" .CC = "XXX@XXX.XX" .Subject = "Personnels non à jour systématique (semaine " & Format(Date - 7, "ww") & ")" .HTMLBody = strbody1 & strbody2 & strbody3 & "<br>" & .HTMLBody End With
On Error GoTo 0 Set OutMail = Nothing Set OutApp = Nothing
Ce lien m'a bien aidé. il y a encore une imperfection, mais ma hiérarchie a validé, donc je ferai avec.
C'est parfait :)