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

XL 2016 Envoi mail Outlook depuis Excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Anto35200

XLDnaute Occasionnel
Bonjour,

Avec le code VBA actuel, je rencontre ces problèmes :
* dans l'objet du mail, il manque le symbole Euro après le montant
* je voudrai inclure le mot "Bonjour," au début du corps du message, puis aller à la ligne.
* dans le corps du message, il manque aussi le symbole Euro après le montant.


En vous remerciant de votre aide.
 

Pièces jointes

Bonjour @Anto35200
Edit Bonjour @kiki29

Je te propose sur la base de ton code non testé

Edit code modifié à 17h58
VB:
Option Explicit

Private Sub CommandButton1_Click()
Dim LeMail As Variant, strBody$

Set LeMail = CreateObject("Outlook.Application") 'création d'un objet outlouk

With LeMail.CreateItem(olMailItem) ' informe le programme que nous voulons envoyer un mail.
    .Subject = "Confirmation règlement facture pour  " & Range("D7") & " €"
    .To = Range("D5") 'Destinataire du mail
    strBody = Range("D9")
    .Body = strBody & vbCrLf & Range("D11") & Range("D7") & " €"
    .Display 'afficher le mail avant de l'envoyer sinon placer send pour envoyer
End With
End Sub

Merci de ton retour
 
Dernière édition:
Re

@Anto35200

Voici une autre version qui fonctionne

VB:
Private Sub CommandButton1_Click()

Dim Ws1 As Worksheet
Dim OutApp As Object, OutMail As Object, strBody$

Set Ws1 = Worksheets("Mail")

On Error Resume Next
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

With OutMail
    .To = Ws1.Range("D5").Value
    .Subject = "Confirmation règlement facture pour  " & Ws1.Range("D7") & " €"
    strBody = Range("D9")
    .Body = strBody & vbCrLf & Ws1.Range("D11") & Ws1.Range("D7") & " €"
    .Display 'afficher le mail avant de l'envoyer sinon placer send pour envoyer
    '.Send
End With

Set OutMail = Nothing: Set OutApp = Nothing
End Sub

Merci de ton retour
 
J'ai essayé les 2 versions.
Ces 2 versions n'ont toujours pas de saut de ligne après "Bonjour".

Version 2 :

Private Sub CommandButton1_Click()

Dim Ws1 As Worksheet
Dim OutApp As Object, OutMail As Object, strBody$

Set Ws1 = Worksheets("Mail")

On Error Resume Next
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

With OutMail
.To = Ws1.Range("D5").Value
.Subject = "Confirmation règlement facture pour " & Ws1.Range("D7") & " €"
strBody = Range("D9")
.Body = strBody & Chr(13) & Chr(10) & Ws1.Range("D11") & Ws1.Range("D7") & " €"
.Display 'afficher le mail avant de l'envoyer sinon placer send pour envoyer
'.Send
End With

Set OutMail = Nothing: Set OutApp = Nothing
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
310
Réponses
1
Affichages
367
Compte Supprimé 979
C
Réponses
2
Affichages
726
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…