Обеспечение отображения контактов в списке рассылки с указанием имени и адреса электронной почты - PullRequest
2 голосов
/ 05 мая 2010

Как я могу убедиться, что контакты, которые я добавляю в список рассылки Outlook, отображаются с именем и адресом электронной почты? Эти контакты могут отсутствовать в любой другой адресной книге, только в списке рассылки. В настоящее время они отображаются в виде адреса электронной почты (в обоих столбцах).

альтернативный текст http://img52.imageshack.us/img52/1804/tempgg.jpg

Вот примерно VBA, которую мы используем:

    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

Ответы [ 2 ]

1 голос
/ 05 мая 2010

Спасибо Дику Куслейке за ответ, но Ответ Грэма здесь дал мне идею, что может быть более легкий путь.

И это только использование угловых скобок в записи в списке рассылки. Как в "Ringo Starr<rstarr@example.com>"

Что отлично работает.

Итак, мой оригинальный пример будет выглядеть так:

objRecipients.Add RS!FullName & "<" & RS!Email & ">"
1 голос
/ 05 мая 2010

Я думаю, вам нужно создать ContactItem для каждого получателя, чтобы вы могли определить имя. Вот пример:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...