Bonjour à tous,
J'utilise une macro Excel pour faire du mailing sur VBA. Trois adresses mail sont synchronisés sur mon Outlook. Je voudrais que l'adresse utilisée pour expédier les e-mails soit l'adresse n°3. Malheureusement quand je créé un nouvel objet mail via excel, l'expéditeur est par défaut mon adresse n°1 et je n'arrive pas à changer cet expéditeur via VBA.
J'ai essayé en utilisant les fonctions :
.SentOnBehalfOfName
.SendUsingAccount
Dans le premier cas, quand mon client reçoit l'email, le nom d'expéditeur affiché est bien mon adresse n°3, mais malgré tout l'email a été envoyé via l'adresse n°1. Par contre si mon client répond, l'email sera bien envoyé à mon adresse n°3.
Dans le second cas (.SendUsingAccount), le code s'execute, mais rien ne se passe, l'adresse expéditeur reste mon adresse n°3.
J'ai fait beaucoup de recherche, mais je n'ai rien trouvé, sauriez vous comment résoudre ce problème?
Voici le code que j'utilise :
Je vous remercie d'avance, toute aide serait grandement appréciée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 'création de l'email Dim Messagerie As Variant Set Messagerie = CreateObject("Outlook.Application") Set olNS = Messagerie.GetNamespace("MAPI") Set LeMail = Messagerie.CreateItem(oMailItem) LeMail.Display Signature = LeMail.htmlbody ' je créé 3 variables auxquelles j'attribue mes comptes, pour vérifier lors de l'exécution pas à pas que ces comptes existent et que ce sont les bons. compte1 = olNS.Accounts.Item(1) compte2 = olNS.Accounts.Item(2) compte3 = olNS.Accounts.Item(3) With LeMail '.SentOnBehalfOfName = "********@******.fr" .To = Email .Subject = Objet .Attachments.Add Personalized_File_Name .htmlbody = Message & Signature .Display .SendUsingAccount = olNS.Accounts.Item(3) .Display .DeferredDeliveryTime = Now + TimeSerial(0, (i - 2) * 12 + 3, 0) .Display '.Send End With
ps : Je suis sur Microsoft Office professionnel 2016.
Partager