2014-12-09 3 views
0

У меня возникли трудности с вытаскиванием тела сохраненного шаблона электронной почты в мой VBA. Я использую Office 2010. Что я делаю, это отправка массовых писем из Excel. Каждый раз, когда я его отправляю, я получаю пустое электронное письмо без тела. У меня было это с 2013 года. Есть ли что-то другое между годами в кодировании?Мой VBA не тянет тело моего сохраненного шаблона электронной почты

Private Function GetRichTextTemplate() As String 

Dim OLF As Outlook.MAPIFolder 
Dim olMailItem As Outlook.MailItem 

Set OLF = GetObject("", "Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(olFolderDrafts) 
Set oItems = OLF.Items 

For Each Mailobject In oItems 
    If Mailobject.subject = "2014 Year End Client Letter" Then 
     GetRichTextTemplate = Mailobject.HTMLBody 
     Exit Function 
    End If 
Next 

End Function

+0

Я пытался это исправить. Вы прошли через код, чтобы увидеть, что заполняется GetRichTextTemplate? Я предполагаю, что GetRichTextTemplate нет, и именно поэтому вы получаете пустое электронное письмо. – mrbungle

ответ

1

Я не эксперт, когда дело доходит до Outlook/VBA, но то, что я должен работать, чтобы показать, что предмет был быть найден и продвигаясь к следующей строке GetRichTextTemplate = Mailobject.HTMLBody это:

Private Function GetRichTextTemplate() As String 

Dim OLF As Outlook.MAPIFolder 
Dim olMailItem As Outlook.MailItem 

Set OLF = GetObject("", "Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) 
Set oItems = OLF.Items 

For Each olMailItem In OLF.Items 

    i = i + 1 
    With OLF.Items(i) 

    If .Subject = "2014 Year End Client Letter" Then 
     GetRichTextTemplate = mailobject.HTMLBody 
     Exit Function 
    End If 

    End With 

Next 

End Function