envoie multiple avec EmailSendTo

alfonso

XLDnaute Junior
bonjour
je cherche a envoyé un mail à plusieurs destinataires

voici une partie de mon code
On Error GoTo err_SendNotesMsg
' Initialisation des variables
EMailSendTo = "adresse1@free.fr, adresse2@hotmail.fr, adresse4@yahoo.fr" 'liste de diffusion
EMailCopyTo = "adresse3@xxx.com" 'liste de diffusion en copie
EMailSubject = "Suivi des convocations clients " & Cells(1, 1) 'sujet du mail

j'ai éssaye de séparer les adresse par des point virgule mais l'envoie ne s'effectue qu'a la première adresse mais chose avec des virgules l'email est envoyé à la première adresse de la liste

pouvez-vous m'aidez
 

alfonso

XLDnaute Junior
Re : envoie multiple avec EmailSendTo

c'est un début par contre ma liste de diffusion d'email ne se trouve pas dans des cellules moi je dois les entrer directement dans la macro comme ca quand je clic dessus ca envoie automatiquement a toutes les personnes
 

Staple1600

XLDnaute Barbatruc
Re : envoie multiple avec EmailSendTo

Re

Dans ce cas, essayes d'adapter ceci:
Code:
Sub test()
EMailSendTo = Split("adresse1@free.fr,adresse2@hotmail.fr,adresse4@yahoo.fr", ",") 'liste de diffusion
For i = 0 To UBound(EMailSendTo)
adresses = adresses & EMailSendTo(i) & ";"
Next i
MsgBox Left(adresses, Len(adresses) - 1)
End Sub
 

Staple1600

XLDnaute Barbatruc
Re : envoie multiple avec EmailSendTo

Re

Code:
Sub test_II()
Dim EMailSendTo
Dim i As Byte
Dim adresses As String
EMailSendTo = Split("adresse1@free.fr,adresse2@hotmail.fr,adresse4@yahoo.fr", ",") 'liste de diffusion
For i = 0 To UBound(EMailSendTo)
adresses = adresses & EMailSendTo(i) & ";"
Next i
MsgBox Left(adresses, Len(adresses) - 1)
End Sub
 

alfonso

XLDnaute Junior
Re : envoie multiple avec EmailSendTo

toujours la même erreur sinon si c'est pas possible je vais mettre les mails dans des cellules et dire à excel d'allé chercher les mails

comment je dois écrire les mails?

1 par cellule ou tous dans la même cellule séparé de virgules et entre guillemet ??
merci
 

alfonso

XLDnaute Junior
Re : envoie multiple avec EmailSendTo

re

la version que je possede est microsoft office 2000 SR

quand je copie ta macro test2 seul dans un classeur vierges oui ca fonctionne (par contre je ne reçois aucun mail mais ca doit etre normal)

et quand je l'adapte a ma macro la sa me donne l'erreur donné plus haut

voici mon code complet adapter avec ta macro
Sub Macro1()
'
' Macro1 Macro
' Macro écrit le 14/04/2008 par aozel
'
Dim oSess As Object
Dim oDB As Object
Dim oDoc As Object
Dim oItem As Object

Dim ntsServer As String
Dim ntsMailFile As String
'
Dim EMailSendTo As String
Dim EMailCopyTo As String
Dim EMailSubject As String
Dim MailPJ As String
Dim LotusSRV As String
Dim WbkName As String
Dim i As Byte
Dim adresses As String

On Error GoTo err_SendNotesMsg
' Initialisation des variables


EMailSendTo = Split("ozelasim@free.fr, as_turc@hotmail.fr", ",") 'liste de diffusion
For i = 0 To UBound(EMailSendTo)
adresses = adresses & EMailSendTo(i) & ";"
Next i
MsgBox Left(adresses, Len(adresses) - 1)
EMailCopyTo = "" 'liste de diffusion en copie
EMailSubject = "Suivi des convocations clients" 'sujet du mail

' Créer une nouvelle session Notes
Set oSess = CreateObject("Notes.NotesSession")


ntsServer = oSess.GetEnvironmentString("YN34BEL/BTA/EMG/PGD", True) 'nom du serveur de lotus
'Acquière le nom du fichier mailfile de l'utilisateur courant dans Notes.ini
ntsMailFile = oSess.GetEnvironmentString("MailFile", True)
Set oDB = oSess.GetDatabase(ntsServer, ntsMailFile)
Set oDoc = oDB.CreateDocument
' Définit les éléments à rajouter au message
Set oItem = oDoc.createRichTextItem("BODY")

oDoc.Form = "Memo"
' Préparer les destinataires
oDoc.Sendto = EMailSendTo
If Not IsMissing(EMailCopyTo) Then
oDoc.Copyto = EMailCopyTo
End If

' Préparer le sujet du message
If Not IsMissing(EMailSubject) Then
If EMailSubject <> "" Then oDoc.Subject = EMailSubject
End If
oDoc.FROM = oSess.CommonUserName
oDoc.PostedDate = Date
' Pour avoir un accusé de réception
oDoc.ReturnReceipt = "1"

' Préparer le texte qui figurera dans le message

With oItem
.AppendText "TABLEAU DE SUIVI DES CONVOCATIONS CLIENTS AFFAIRE H2"
.AddNewline 1
.AppendText "*********************************************************************************"
.AddNewline 2
.AppendText "Des convocations clients ont été ajoutées pour l'affaire" & Cells(1, 1)
.AddNewline 1
.AppendText "N'oubliez pas de remplir les dates de convocations sur cette affaire"
.AddNewline 2
.AppendText "rendez-vous dans le répertoire ci-dessous pour consulter les convocations"
.AddNewline 2
.AppendText "G:\SMG\Commun\0 SUIVI DES CONVOCATIONS CLIENTS"
.AddNewline 1
.AppendText "--------------------------------------------------------------------------------------------------------"
.AddNewline 2
.AppendText "Cellule Vert: Date de lancement de convocation compris entre -10 et -5 jours "
.AddNewline 1
.AppendText "Cellule Jaune: Date de lancement de convocation compris entre -5 et -1 jours"
.AddNewline 1
.AppendText "Cellule Rouge: Date de lancement de convocation compris entre -1 et +2 jours"
.AddNewline 2
.AppendText "Cet e-mail a été généré par un processus automatique."
.AddNewline 2

End With


' Créer la pièce jointe
' Ca peut être le classeur
WbkName = ThisWorkbook.FullName
'Attachement du classeur au mail
Call oItem.embedObject(1454, "", WbkName, "")

' Ou Attachement d'un document
'Call oItem.embedObject(1454, "", "Chemin et nom complet du doc","")

' Message de salutation
oItem.AddNewline 1
oItem.AppendText "Cordialement"
oItem.AddNewline 2
oItem.AppendText "Asim OZEL"

' Envoyer le message
oDoc.send False
' confirmation de l'envoi du message
MsgBox "Le message a été envoyé", vbInformation, "MESSAGE LOTUS ..."

'message d'erreur
exit_SendNotesMsg:
On Error Resume Next
Set oSess = Nothing
Set oDB = Nothing
Set oDoc = Nothing
Set oItem = Nothing
Exit Sub

err_SendNotesMsg:
If Err.Number = 7225 Then
MsgBox "Impossible d'attacher le fichier, vérifier le chemin!", vbCritical
Else
MsgBox "[" & Err.Number & "]: " & Err.Description
End If
MsgBox "Message non envoyé suite erreur!", vbCritical
Resume exit_SendNotesMsg

'
End Sub
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : envoie multiple avec EmailSendTo

Re


C'est normal la macro test2 n'envoie pas de mails

C'était une macro de test pour te montrer comment créer une chaine de caractères (les adresses email) séparés par un ;

Et affichée dans une MsgBox.

Ensuite il fallait l'intéger ainsi dans ta macro.
Code:
'début de ta macro
  EMailSendTo = Split("ozelasim@free.fr, [EMAIL="as_turc@hotmail.fr"]as_turc@hotmail.fr[/EMAIL]", ",") 'liste de diffusion
  For i = 0 To UBound(EMailSendTo)
  adresses = adresses & EMailSendTo(i) & ";"
  Next i
 EMailCopyTo = Left(adresses, Len(adresses) - 1)
'reste de ta macro
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : envoie multiple avec EmailSendTo

Re



Je ne lis pourtant pas la même chose dans le code que tu as posté

Code:
  EMailSendTo = Split("ozelasim@free.fr, [EMAIL="as_turc@hotmail.fr"]as_turc@hotmail.fr[/EMAIL]", ",") 'liste de diffusion
  For i = 0 To UBound(EMailSendTo)
  adresses = adresses & EMailSendTo(i) & ";"
  Next i
[B]   MsgBox Left(adresses, Len(adresses) - 1)[/B]
  EMailCopyTo =[B] "" 'liste de diffusion en copie[/B]
  EMailSubject = "Suivi des convocations clients" 'sujet du mail

C'est différent de mon dernier message non??
 

RENAUDER

Nous a quitté
Repose en paix
Re : envoie multiple avec EmailSendTo

Bonjour à tous,

Je m'immisce dans votre fil pas non pas pour vous apporter ma contribution mais simplement pour vous informer que j'ai eu besoin suite à une demande d'un visiteur de mon site de faire de l'envoi simultané de 29 fichiers à un destinataire différent (1 fichier=1 adresse mail)
J'ai essayé avec Outlook Express puis Thunderbird mais comme il faut utiliser le Sendkeys, ce n'était pas top, il y avait parfois des loupés.
Au hasard de mes recherches sur le Web, j'ai trouvé une solution qui utilise GMail comme serveur SMTP et cela m'a paru bien mieux adapté à mon cas.
Seule contrainte, avoir un compte GMail.
Peut-être que cela peut intéresser quelqu'un.
 

Staple1600

XLDnaute Barbatruc
Re : envoie multiple avec EmailSendTo

Bonjour Eric



Tu utilises un code VBA avec Gmail

Ou tu fais l'envoi directement de ton compte Gmail?


PS: alfonso: si dans ton code VBA, les adresses mail sont réelles, tu devrais peut-être les remplacer par des adresses mail fictives non?
 
Dernière édition:

Statistiques des forums

Discussions
312 684
Messages
2 090 916
Membres
104 697
dernier inscrit
Pierrot Hubert