Asegurar los contactos en una lista de distribución se muestran con el nombre y dirección de correo electrónico
-
03-10-2019 - |
Pregunta
¿Cómo puedo estar seguro de que los contactos I Añadir a una lista de distribución de Outlook se muestran con el nombre y dirección de correo electrónico? Estos contactos no pueden existir en cualquier otra libreta de direcciones, sólo la lista de distribución. En la actualidad es que aparecen simplemente como una dirección de correo electrónico (en ambas columnas).
alt text http://img52.imageshack.us/img52/1804/tempgg .jpg
Aquí es más o menos la VBA que estamos utilizando:
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
Solución 2
Gracias a Dick Kusleika por su respuesta, pero de Graeme respuesta aquí me dio una idea que podría haber una manera más fácil.
Y eso es sólo para uso paréntesis angulares en la entrada a la lista de distribución. Como en "Ringo Starr<rstarr@example.com>"
Lo que funciona bien.
Así que mi original ejemplo sería el siguiente:
objRecipients.Add RS!FullName & "<" & RS!Email & ">"
Otros consejos
Yo creo que hay que crear un ContactItem para cada destinatario para que pueda definir el nombre. He aquí un ejemplo:
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