Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Envoi de mail avec MAPI

5 réponses
Avatar
Daniel AUBRY
Bonjour à tous,

j'essaie d'envoyer un mail à x destinataires en copie cachée
depuis VB.
Le code ci-dessous fonctionne si je met une seule adresse,
dès la deuxième j'ai le message "Destinataire inconnu"

MAPISession.SignOn

With MAPIMessage
.MsgIndex = -1
.RecipType = mapBccList
.RecipDisplayName = "toto@free.fr; titi@free.fr"
.MsgSubject = "Essai de mail avec VB6"
.MsgNoteText = "Ceci est le corps du message"

.AttachmentPathName = "D:\Mes documents\Mon fichier.txt"
.SessionID = MAPISession.SessionID
.Send
End With

MAPISession.SignOff

MsgBox "Message envoyé !!"

Unload Me

Si quelqu'un à une petite piste !!!!

Dany

5 réponses

Avatar
David
Bonjour Daniel,

J'ai jamais utilisé MAPI, mais voici qqchose
trouvé sur le net.
Si ça peut vous aider.

a+
Jean-Pol DAVID


Dim locVarI as Integer, locVarJ as Integer

MAPISession1.SignOn

With MAPIMessages1

.MsgIndex = -1

For locVarJ = 0 to NbPersonne - 1

.RecipIndex = locVarJ

.RecipDisplayName = "Nom de la personne"

.RecipAddress = "Adresse de la personne"

.MsgSubject = "Sujetb du mail"

For locVarJ = 0 To NbPieceJointe - 1

.AttachmentIndex = locVarJ

.AttachmentName = "Nom du fichier"

.AttachmentPathName = "Chemin du fichier"

Next locVarJ

.SessionID = MAPISession1.SessionID

.Send

End With

MAPISession1.SignOff
"Daniel AUBRY" a écrit dans le message de news:
45cdbec7$0$422$
Bonjour à tous,

j'essaie d'envoyer un mail à x destinataires en copie cachée
depuis VB.
Le code ci-dessous fonctionne si je met une seule adresse,
dès la deuxième j'ai le message "Destinataire inconnu"

MAPISession.SignOn

With MAPIMessage
.MsgIndex = -1
.RecipType = mapBccList
.RecipDisplayName = "; "
.MsgSubject = "Essai de mail avec VB6"
.MsgNoteText = "Ceci est le corps du message"

.AttachmentPathName = "D:Mes documentsMon fichier.txt"
.SessionID = MAPISession.SessionID
.Send
End With

MAPISession.SignOff

MsgBox "Message envoyé !!"

Unload Me

Si quelqu'un à une petite piste !!!!

Dany



Avatar
Daniel AUBRY
Bonsoir,
effectivement je suis tombé dessus aussi et j'ai
modifié mon code en conséquence. Mais il me
reste un problème : c'est le dernier destinataire
qui recoit tous les mails.
Par contre la pièce jointe passe bien.

Mon code :

Dim NombrePersonne As Integer
Dim Adresse() As String
Dim Nom() As String
ReDim Adresse(1)
ReDim Nom(1)

NombrePersonne = 2
Adresse(0) = ""
Nom(0) = "Monsieur Titi"
Adresse(1) = ""
Nom(1) = "Monsieur Toto"

MAPISession.SignOn

With MAPIMessage
.MsgIndex = -1
.RecipType = mapBccList
For i = 0 To NombrePersonne - 1
.RecipIndex = i
.RecipAddress = Adresse(i)
.RecipDisplayName = Nom(i)
.MsgSubject = "Essai de mail avec VB6"
.MsgNoteText = "Ceci est le corps du message " & .RecipAddress
Next

.AttachmentPathName = "D:Mes documentsGlace aux nougats Marthe.txt"
.SessionID = MAPISession.SessionID
.Send
End With

MAPISession.SignOff

MsgBox "Message envoyé !!"

Unload Me

"David" a écrit dans le message de news:
%
Bonjour Daniel,

J'ai jamais utilisé MAPI, mais voici qqchose
trouvé sur le net.
Si ça peut vous aider.

a+
Jean-Pol DAVID


Dim locVarI as Integer, locVarJ as Integer

MAPISession1.SignOn

With MAPIMessages1

.MsgIndex = -1

For locVarJ = 0 to NbPersonne - 1

.RecipIndex = locVarJ

.RecipDisplayName = "Nom de la personne"

.RecipAddress = "Adresse de la personne"

.MsgSubject = "Sujetb du mail"

For locVarJ = 0 To NbPieceJointe - 1

.AttachmentIndex = locVarJ

.AttachmentName = "Nom du fichier"

.AttachmentPathName = "Chemin du fichier"

Next locVarJ

.SessionID = MAPISession1.SessionID

.Send

End With

MAPISession1.SignOff
"Daniel AUBRY" a écrit dans le message de news:
45cdbec7$0$422$
Bonjour à tous,

j'essaie d'envoyer un mail à x destinataires en copie cachée
depuis VB.
Le code ci-dessous fonctionne si je met une seule adresse,
dès la deuxième j'ai le message "Destinataire inconnu"

MAPISession.SignOn

With MAPIMessage
.MsgIndex = -1
.RecipType = mapBccList
.RecipDisplayName = "; "
.MsgSubject = "Essai de mail avec VB6"
.MsgNoteText = "Ceci est le corps du message"

.AttachmentPathName = "D:Mes documentsMon fichier.txt"
.SessionID = MAPISession.SessionID
.Send
End With

MAPISession.SignOff

MsgBox "Message envoyé !!"

Unload Me

Si quelqu'un à une petite piste !!!!

Dany







Avatar
Bernard GUERIN
Bonjour,

"Daniel AUBRY" a écrit dans le message de news:
45ce1bc2$0$2298$

For i = 0 To NombrePersonne - 1
.MsgNoteText = "Ceci est le corps du message " & .RecipAddress
Next
.Send



Il ne faudrait pas que le Send soit à l'intérieur de la boucle ?

--
Bernard
Avatar
Daniel AUBRY
Bonsoir,

Surtout pas !!
Si le send est dans la boucle je vais envoyer
x mails au lieu de 1 mail avec x destinataires.
J'ai essayé.

Merci de m'avoir lu.

"Bernard GUERIN" a écrit dans le message de
news:
Bonjour,

"Daniel AUBRY" a écrit dans le message de news:
45ce1bc2$0$2298$

For i = 0 To NombrePersonne - 1
.MsgNoteText = "Ceci est le corps du message " & .RecipAddress
Next
.Send



Il ne faudrait pas que le Send soit à l'intérieur de la boucle ?

--
Bernard




Avatar
Bernard GUERIN
Bonjour,

"Daniel AUBRY" a écrit dans le message de news:
45cf9ae5$0$439$

Si le send est dans la boucle je vais envoyer
x mails au lieu de 1 mail avec x destinataires.



Pardon, j'ai cru que c'était ce que tu voulais faire.

Donc le problème semble plutôt être que l'application ne gère pas le
"recipindex", mais je ne sais pas pourquoi.
--
Bernard