Insérer du texte dans une VBA Mail avant un tableau
e
Bonjour,
Je rencontre une difficulté, j'ai créé une macro permettant d'envoyer un mail d'un tableau.
Je souhaiterais mettre avant ce tableau le message suivant:
"Bonjour,"
"Je souhaiterais aborder ce(s) différent(s) lors de la ou les prochaines réunions de performance hebdomadaire. Vous pouvez vous rendre sur le fichier ici:" (je mettre le lien après).
Cependant, impossible d'afficher le texte malgré ma macro ci-dessous.
Merci pour votre aide
Sub Envoyer_un_tabeau_OK()
'
'Déclaration de la variable
Dim MaFeuille As Worksheet
Dim NbLigne As Integer
Dim rng As Range
Dim emailBody As String
'Affectation des variables
Set MaFeuille = ThisWorkbook.Sheets("Réunion de perf")
'Desactivation du raffaichissement de l'écran
Application.ScreenUpdating = False
'On calcule le nombre de ligne à prendre
NbLigne = MaFeuille.Range("D" & Application.Rows.Count).End(xlUp).Row
'Désactiver les messages d'alerte
Application.DisplayAlerts = False
'Supprimer tous les filtres pour s'assurer que nous partons d'un état non filtré
MaFeuille.AutoFilterMode = False
'Filtrer la colonne C pour n'inclure que les cellules vides et celles contenant "En attente"
Set rng = MaFeuille.Range("E7:E" & NbLigne)
rng.AutoFilter Field:=1, Criteria1:="=", Operator:=xlOr, Criteria2:="En attente"
'On selectionne la plage à copier
MaFeuille.Range("B5:H" & NbLigne).Select
'Avec l'object Mail
ActiveWorkbook.EnvelopeVisible = True
With Selection.Parent.MailEnvelope
With .Item
.To = MaFeuille.Range("C2").Value
.CC = MaFeuille.Range("C3").Value
.Subject = MaFeuille.Range("B5").Value
'Initialisation du corps de l'e-mail
emailBody = "Bonjour," & vbCrLf & vbCrLf & _
"Je souhaiterais aborder ce(s) différent(s) lors de la ou les prochaines réunions de performance hebdomadaire. Vous pouvez vous rendre sur le fichier ici:" & vbCrLf & vbCrLf
'Ajouter le contenu du tableau au corps de l'e-mail
emailBody = emailBody & Selection.Parent.MailEnvelope.Item.Body
'Ajouter le corps de l'e-mail au message
.Body = emailBody
.Send
'Réactiver les messages d'alerte
Application.DisplayAlerts = True
End With
End With
MsgBox "Votre Email a bien été envoyé.", vbInformation + vbOKOnly, "CONFIRMATION ENVOI SUJETS SOUHAITANT ÊTRE ABORDÉS"
Application.ScreenUpdating = True
Range("A1").Select
End SubInvité
Bonjour elie50260
Vous devriez trouver votre bonheur dans les codes proposés dans le fichier ici
https://www.excel-pratique.com/fr/telechargements/utilitaires/pdf-email-vba-excel-no508
A+
C
Bonjour elie50260, BrunoM45,
Voir code ci-dessous pour la partie située sous le commentaire ['Avec l'object mai]
'Avec l'object Mail
ActiveWorkbook.EnvelopeVisible = True
With MaFeuille.MailEnvelope
With .Item
.To = MaFeuille.Range("C2").Value
.CC = MaFeuille.Range("C3").Value
.Subject = MaFeuille.Range("B5").Value
End With
'Initialisation du corps de l'e-mail
emailBody = "Bonjour," & vbCrLf & vbCrLf & _
"Je souhaiterais aborder ce(s) différent(s) lors de la ou les prochaines réunions de performance hebdomadaire. Vous pouvez vous rendre sur le fichier ici:" & vbCrLf & vbCrLf
'Ajouter le contenu du tableau au corps de l'e-mail
emailBody = emailBody & Selection.Parent.MailEnvelope.Item.Body
'Ajouter le corps de l'e-mail au message
.Introduction = emailBody
.Send
End With
'Réactiver les messages d'alerte
Application.DisplayAlerts = TrueCdlt,
Cylfo