Macro envoi e-mail

laskoo87

XLDnaute Nouveau
Bonjour à tous!

Me revoila avec un nouveau problème...
J'ai besoin d'envoyer un mail à une liste de 50 destinataires mais dans ma macro, je ne peux pas entrer 50 personnes...
Pour faire simple, j'ai un fichier avec des boutons et en cliquant sur ce bouton, un mail est envoyé.
Est il possible de dire "on selectionne une plage de mail " plutot que de les faire un par un?
Voici mon code actuel:
Code:
Sub EnvoiMail_Outlook_MKT()
'Creation de l'objet e-mail
Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim CurrFile As String
Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olmailItem)
'Caractéristiques de l'e-mail
With olmail
.To = Range("Circuit!I4").Value & ";" & Range("Circuit!I5").Value & ";" & Range("Circuit!I7").Value & ";" & Range("Circuit!I8").Value & ";" & Range("Circuit!I9").Value & ";" & Range("Circuit!I10").Value & ";" & Range("Circuit!I11").Value & ";" & Range("Circuit!I12").Value & ";" & Range("Circuit!I13").Value & ";" & Range("Circuit!I14").Value & ";" & Range("Circuit!I15").Value & ";" & Range("Circuit!I16").Value & ";" & Range("Circuit!I17").Value & ";" & Range("Circuit!I18").Value & ";" & Range("Circuit!I19").Value & ";" & Range("Circuit!I20").Value & ";" & Range("Circuit!I21").Value & ";" & Range("Circuit!I22").Value
'Affiche le nom comme objet du message
.Subject = "Fiche Article " & ActiveWorkbook.Name
.Body = "Bonjour," & Chr(13) & Chr(13) & "La fiche article " & ActiveWorkbook.Name & " viens d'être créée." & Chr(13) & "Vous la trouverez à l'adresse suivante: " & ActiveWorkbook.FullName & ". " & Chr(13) & "Merci de traiter cette fiche dans les 48h." & Chr(13) & Chr(13) & "Bonne réception." & Chr(13) & Chr(13) & Application.UserName

'Pièces jointes si il y a lieu
    '.Attachments.Add "C:\PGI\Résultats.xls"
.Send

MsgBox "Message envoyé !"

End With
End Sub

Merci beaucoup de votre aide !

Laskoo
 

CHALET53

XLDnaute Barbatruc
Re : Macro envoi e-mail

Bonjour,

Sans être expert

peut-être qu'avec une boucle sur tes destinataires de la sorte :

For i = 4 To 50
Desti = Desti & Cells(4, 9) & ";"
Next i

suivi de ton code :

With olmail
.To = Desti


Alors sans certitude
Bon courage
a+
 

laskoo87

XLDnaute Nouveau
Re : Macro envoi e-mail

Bonjour Chalet53 !

Merci de me donner une piste!
Malheureusement je ne suis pas non plus un expert car je compile des code que je trouve sur la toile...

J'ai essayé avec ta technique mais uniquement la cellule i4 de la feuille active qui est sélectionnée
De plus, le "Next i" n'a pas l'air de fonctionner correctement... Et je t'avoue que je ne sais pas trop comment m'en sortir...
Est il possible de précisé qu'il faut qui sélectionne la liste de destinataire sur une autre feuille?
Si tu as d'autre idées, je suis preneur !

En attendant, j'ai trouvé une solution alternative... J'ajoute un champs "cc", soit :
Code:
With olmail
.To = Range("Circuit!I4").Value & ";" & Range("Circuit!I5").Value
.CC = Range("Circuit!I49").Value & ";" & Range("Circuit!50").Value

Et voila !
C'est pas très très clean mais au moins ca fonctionne !

A+
;)
 

Discussions similaires

Réponses
3
Affichages
718
Réponses
17
Affichages
1 K

Statistiques des forums

Discussions
312 388
Messages
2 087 869
Membres
103 672
dernier inscrit
ammarhouichi