2016-12-21 2 views
0

Я пытаюсь создать электронное письмо, используя VBA, который вытаскивает своих получателей из списка общих папок с дистрибутивом.Устранение списка рассылки в Outlook VBA

У меня есть код ниже, который работает, за исключением того, что он не разрешает список, получатель остается в виде строки.

Sub Email() 

Dim list As Outlook.DistListItem 
Dim oAPP      As Object 
Dim oItem      As Object 
Const olMailItem    As Long = 0 

Set list = Application.Session.GetDefaultFolder(olPublicFoldersAllPublicFolders).Folders.Item("Planning Weekly Distribution List").Items.Item("Test") 

Set oAPP = CreateObject("Outlook.Application") 
Set oItem = oAPP.CreateItem(olMailItem) 
With oItem 
    .Display 
End With 

With oItem 
    .BCC = list 
    .Subject = "hey" 
    .HTMLBody = Body & "<br>" & .HTMLBody 
    .Display 
End With 


End Sub 
+0

Используйте метод «ResolveAll» для разрешения получателей вашего «MailItem». Выведено в MSDN [здесь] (https://msdn.microsoft.com/en-us/library/office/ff867165.aspx). –

+0

Как изменить DistListItem на объект-получатель? – Chris

ответ

1

Был «Планирование недельных списка рассылки» папка добавляется в адресной книге Outlook (правой кнопкой мыши на папке, свойства, адресная книга Outlook)? Если да, просто установите для свойства BCC значение «тест» - Outlook разрешит имя (при условии, что оно однозначно).

Если нет, вам нужно будет добавить членов DL в качестве получателей по одному.

Чтобы убедиться, что папка используется адресной книгой Outlook, установите свойство MAPIFolder.ShowAsOutlookAB.

+0

Папка не была добавлена ​​в адресную книгу Outlook. Есть ли способ добавить его в мою местную адресную книгу? – Chris

+0

Да, см. Обновленный ответ выше. –

+0

Я установил это для папки «Планирование недельного списка рассылки» и по-прежнему не разрешает имя. Я попробовал другое имя контактной группы, а не «Тест». – Chris

Смежные вопросы