Assurer les contacts dans une liste de distribution sont affichés à la fois le nom et l'adresse e-mail
-
03-10-2019 - |
Question
Comment puis-je assurer que les contacts que j'ajouter à une liste de distribution Outlook sont affichés avec le nom et l'adresse e-mail? Ces contacts ne peuvent pas exister dans un autre carnet d'adresses, juste la liste de distribution. À l'heure actuelle, ils apparaissent comme une adresse e-mail (dans les deux colonnes).
texte alt http://img52.imageshack.us/img52/1804/tempgg .jpg
Voici à peu près la VBA nous utilisons:
Do Until RS.EOF
//here's where we want to inject RS!FirstName, RS!Surname etc
objRecipients.Add RS!Email
objRecipients.Resolve
RS.MoveNext
Loop
Set objDistList = contactsFolder.Items.Add("IPM.DistList")
objDistList.DLName = "Whatever"
objDistList.AddMembers objRecipients
objDistList.Save
etc
La solution 2
Merci à Dick Kusleika pour sa réponse, mais la réponse Graeme ici m'a donné une idée qu'il pourrait y avoir un moyen plus facile.
Et qui est juste équerres d'utilisation dans l'entrée à la liste de distribution. Comme dans "Ringo Starr<rstarr@example.com>"
Ce qui fonctionne très bien.
Donc, mon exemple original ressemblerait à ceci:
objRecipients.Add RS!FullName & "<" & RS!Email & ">"
Autres conseils
Je pense que vous devez créer un ContactItem pour chaque destinataire afin que vous puissiez définir le nom. Voici un exemple:
Sub testdistlist()
Dim oRecips As Recipients
Dim ciDist As DistListItem
Dim ci As ContactItem
Dim mi As MailItem
Set mi = Application.CreateItem(olMailItem)
Set oRecips = mi.Recipients
Set ciDist = Application.CreateItem(olDistributionListItem)
'replace this with your recordset loop
Set ci = Application.CreateItem(olContactItem)
ci.FirstName = "John"
ci.LastName = "Lennon"
ci.Email1Address = "jlennon@example.com"
ci.Save
oRecips.Add ci.FullName
Set ci = Application.CreateItem(olContactItem)
ci.FirstName = "Ringo"
ci.LastName = "Starr"
ci.Email1Address = "rstarr@example.com"
ci.Save
oRecips.Add ci.FullName
'end replace
ciDist.AddMembers oRecips
ciDist.Save
ciDist.Display
mi.Close olDiscard
End Sub