Asegurar los contactos en una lista de distribución se muestran con el nombre y dirección de correo electrónico

StackOverflow https://stackoverflow.com/questions/2773908

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
¿Fue útil?

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
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top