Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Sauts de ligne dans envoi mail sous VBA

Philou0607

XLDnaute Nouveau
Bonsoir,
Je parviens à envoyer tout fichier par mail avec du VBA et à insérer ma signature qui est déjà présente dans Outlook.
En revanche, mes sauts de ligne dans le corps du mail n'apparaissent plus, tout se trouve sur la même ligne dans mon mail.
Pourriez-vous m'aider à recréer ces sauts de ligne.
Ci-dessous le code :
D'avance merci pour votre aide

Sub envoiClasseur()
Dim Fichier As Variant

'le programme ouvre une fenêtre où je vais sélectionner le fichier'
Fichier = Application.GetOpenFilename("Tous les fichiers(*.*),*.*")

MsgBox Fichier

'ici j'utilise Outlook comme client de messagerie'
Dim MaMessagerie As Object
Dim MonMessage As Object
Set MaMessagerie = CreateObject("Outlook.application")
Set MonMessage = MaMessagerie.Createitem(0)
MonMessage.Display

'ici je définis les champs du mail'
'entre guillemet j'indique les adresses mail'
MonMessage.to = "toto.toto@gmail.com"
'MonMessage.CC = "toto.toto@gmail.com"
'MonMessage.CCI = "toto.toto@gmail.com"'


'ici commence la rédaction du mail'
MonMessage.attachments.Add Fichier

'sujet du mail'
MonMessage = "Tableau de suivi des agents"

'Corps du mail'
contenu = "Bonjour,"
contenu = contenu & Chr(10) & Chr(13)
'les caractères Chr indiquent un saut de ligne'
contenu = contenu & "Veuillez trouver en pièce jointe le fichier Excel" & Chr(10) & Chr(13)
contenu = contenu & "Bien cordialement" & Chr(10) & Chr(13)
MonMessage.HTMLbody = contenu & MonMessage.HTMLbody

'ici je procède à l'envoi du mail et de sa pièce jointe'
MonMessage.Send

'réinitialisation de la messagerie'
Set MaMessagerie = Nothing

'Boîte de dialogue qui confirme l'envoi du mail et de sa pièce jointe'
MsgBox "Votre mail a bien été envoyé"


End Sub
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

Et pour la question, testes ceci
VB:
Sub envoiClasseur_bis()
Dim Fichier As Variant
'le programme ouvre une fenêtre où je vais sélectionner le fichier'
Fichier = Application.GetOpenFilename("Tous les fichiers(*.*),*.*")
ici j 'utilise Outlook comme client de messagerie'
Dim MaMessagerie As Object
Dim MonMessage As Object
'Set MaMessagerie = CreateObject("Outlook.application")
'Set MonMessage = MaMessagerie.Createitem(0)
MonMessage.Display
'ici je définis les champs du mail'
'entre guillemet j'indique les adresses mail'
MonMessage.to = "staple1600@ummagumma.org"
'ici commence la rédaction du mail'
MonMessage.attachments.Add Fichier
'sujet du mail'
MonMessage.Subject = "Tableau de suivi des agents"
'Corps du mail'
contenu = "Bonjour," & vbCr & vbCr
contenu = contenu & "Veuillez trouver en pièce jointe le fichier Excel" & vbCr & vbCr
contenu = contenu & "Bien cordialement."
MsgBox contenu
MonMessage.HTMLbody = contenu
'ici je procède à l'envoi du mail et de sa pièce jointe'
MonMessage.Send
'réinitialisation de la messagerie'
Set MaMessagerie = Nothing
'Boîte de dialogue qui confirme l'envoi du mail et de sa pièce jointe'
MsgBox "Votre mail a bien été envoyé"
End Sub
NB: Evidemment, change le mail présent dans le code
 

Staple1600

XLDnaute Barbatruc
Re

Désolé, j'avais oublié de décommenter les lignes idoines
Donc ci-dessous décommenté et remanié
Je te laisse tester.
VB:
Sub envoiClasseur_ter()
Dim MaMessagerie As Object, MonMessage As Object, Fichier As Variant
Fichier = Application.GetOpenFilename("Tous les fichiers(*.*),*.*")
Set MaMessagerie = CreateObject("Outlook.application")
With MaMessagerie.Createitem(0)
    .To = "staple1600@ummagumma.org"
    .Attachments.Add Fichier
    .Subject = "Tableau de suivi des agents"
    contenu = "Bonjour," & vbCr & vbCr
    contenu = contenu & "Veuillez trouver en pièce jointe le fichier Excel" & vbCr & vbCr
    contenu = contenu & "Bien cordialement."
    .HTMLbody = contenu
    .Display
    .Send
End With
Set MaMessagerie = Nothing
MsgBox "Votre mail a bien été envoyé"
End Sub
 

Discussions similaires

Réponses
2
Affichages
620
Réponses
7
Affichages
557
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…