Code vba envoie de mail à plusieurs déstinataire
Leandro
-
Leandro -
Leandro -
Bonjour,
J'ai trouvé ce code vba qui fonctionne très bien, mais j'aimerai plutôt que de rentrer manuellement l'adresse mail faire référence à une plage d'une feuille du classeur.
Pouvez-vous m'indiquer la marche à suivre ?
Merci,
Sub sendMail2()
Dim envoyerA As String, envoyerCc As String, Subject As String
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message :
envoyerA = "***@***" ' Indiquer ici l'adresse mail à laquelle il faut envoyer le message en copie carbone (Cc) :
envoyerCc = ""
' Indiquer ici le sujet de l'e-mail :
Subject = "Test"
Dim s As Object
Dim docMail As Object
Dim body As Object
Dim stream As Object
Set s = CreateObject("Notes.NotesSession")
Set db = s.CurrentDatabase
s.ConvertMIME = False ' Do not convert MIME to rich text
'Create email to be sent
Set docMail = db.CreateDocument
With docMail
.Form = "Memo"
.SendTo = envoyerA
.copyTo = envoyerCc
.Subject = Subject
.From = s.COMMONUSERNAME
.ReplyTo = s.COMMONUSERNAME
'.Principal = FROM ADDRESS
End With
Set stream = s.CreateStream
Set body = docMail.CreateMIMEEntity
Call stream.WriteText("<h1>Hello, World!</h1><ul><li>Une</li><li>Liste</li><li>À</li><li>Puce</li></ul>")
Call body.SetContentFromText(stream, "text/html;charset=iso-8859-1", ENC_IDENTITY_8BIT)
Call docMail.SEND(False)
Set docMail = Nothing
Set body = Nothing
Set stream = Nothing
MsgBox "Message envoyé"
End Sub
J'ai trouvé ce code vba qui fonctionne très bien, mais j'aimerai plutôt que de rentrer manuellement l'adresse mail faire référence à une plage d'une feuille du classeur.
Pouvez-vous m'indiquer la marche à suivre ?
Merci,
Sub sendMail2()
Dim envoyerA As String, envoyerCc As String, Subject As String
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message :
envoyerA = "***@***" ' Indiquer ici l'adresse mail à laquelle il faut envoyer le message en copie carbone (Cc) :
envoyerCc = ""
' Indiquer ici le sujet de l'e-mail :
Subject = "Test"
Dim s As Object
Dim docMail As Object
Dim body As Object
Dim stream As Object
Set s = CreateObject("Notes.NotesSession")
Set db = s.CurrentDatabase
s.ConvertMIME = False ' Do not convert MIME to rich text
'Create email to be sent
Set docMail = db.CreateDocument
With docMail
.Form = "Memo"
.SendTo = envoyerA
.copyTo = envoyerCc
.Subject = Subject
.From = s.COMMONUSERNAME
.ReplyTo = s.COMMONUSERNAME
'.Principal = FROM ADDRESS
End With
Set stream = s.CreateStream
Set body = docMail.CreateMIMEEntity
Call stream.WriteText("<h1>Hello, World!</h1><ul><li>Une</li><li>Liste</li><li>À</li><li>Puce</li></ul>")
Call body.SetContentFromText(stream, "text/html;charset=iso-8859-1", ENC_IDENTITY_8BIT)
Call docMail.SEND(False)
Set docMail = Nothing
Set body = Nothing
Set stream = Nothing
MsgBox "Message envoyé"
End Sub
A voir également:
- Code vba envoie de mail à plusieurs déstinataire
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Windows live mail - Télécharger - Mail
2 réponses
J'ai trouvé une astuce mais elle ne me permet que de selectionner qu'une celulle.
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message :
envoyerA = Sheets("Feuil2").Range("L4").Value
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message en copie carbone (Cc) :
envoyerCc = ""
' Indiquer ici le sujet de l'e-mail :
Subject = "Test"
Avez-vous une idée sur comment indiquer une plage ? pour info le Range("L4:L6").Value n'a pas fonctionné.
Merci
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message :
envoyerA = Sheets("Feuil2").Range("L4").Value
' Indiquer ici l'adresse mail à laquelle il faut envoyer le message en copie carbone (Cc) :
envoyerCc = ""
' Indiquer ici le sujet de l'e-mail :
Subject = "Test"
Avez-vous une idée sur comment indiquer une plage ? pour info le Range("L4:L6").Value n'a pas fonctionné.
Merci
Re, j'ai fini par trouver un autre code qui permet de l'envoyer à plusieurs personne :
Sub EnvoiUnMail()
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String, CC As String
MailAd = Range("d1")
Subj = Range("d3")
Msg = Msg & Range("d4")
CC = Range("D2")
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&cc=" & CC & "&body=" & Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub
Le soucis c'est que ce code me crée le message dans ma boite mail mais ne l'envoie pas. Comment faire pour qu'il s'envoie automatiquement ?
Merci
Sub EnvoiUnMail()
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String, CC As String
MailAd = Range("d1")
Subj = Range("d3")
Msg = Msg & Range("d4")
CC = Range("D2")
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&cc=" & CC & "&body=" & Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub
Le soucis c'est que ce code me crée le message dans ma boite mail mais ne l'envoie pas. Comment faire pour qu'il s'envoie automatiquement ?
Merci