2011-01-19 2 views
1

Мне нужно добавить получателей счётов в электронную почту, загруженную из шаблона. Получатели должны быть всеми контактами в определенной категории. У меня есть следующие до сих пор, за исключением того, что крайне неэффективно и приводит к Outlook, зависание:Добавить получателей счётчиков с использованием Outlook VBA

Sub Distribute_Newsletter() 
Set newItem = Application.CreateItemFromTemplate("P:\Subscription Templates\subscription template.oft") 
newItem.Display 

Set oNS = Application.GetNamespace("MAPI") 
Set oContacts = oNS.Folders(1).Folders("Contacts") 
Dim emailAddress As String 

For Each oContactItem In oContacts.Items 
    If oContactItem.Class = olContact Then 
     emailAddress = oContactItem.Email1Address 
     If Not emailAddress = "" Then 'And oContactItem.Categories 
      Set objRecip = newItem.Recipients.Add(emailAddress) 
      objRecip.Type = olBCC 
     End If 
    End If 
Next 

Set oNS = Nothing 
Set oContacts = Nothing 
Set objRecip = Nothing 
Set newItem = Nothing 
End Sub 

ответ

0

То, что я в конечном итоге делает двигалось newItem.Display вниз как раз перед Set newItem = Nothing. Это может быть не самое эффективное решение, но оно выполняет свою работу без возникновения сбоя.

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