我试图在Outlook中收到电子邮件的主体和负责人。我正在使用NewMailEx
事件处理程序来管理所有正在进入的电子邮件。
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim olApp As Outlook.Application
Dim oNS As NameSpace
Dim oFolder As MAPIFolder
Dim oNewMail As MailItem
Set olApp = Outlook.Application
Set oNS = GetNamespace("MAPI")
Set oFolder = oNS.GetDefaultFolder(olFolderInbox)
Set oNewMail = oFolder.Items.GetFirst
Set Msg = oNS.GetItemFromID(EntryIDCollection)
MsgBox Msg.Body
End Sub
此功能正在成功调用,我可以使用以下方式获取电子邮件的标题:
MsgBox Msg
但是当我尝试使用Msg.Body
时,MsgBox
中没有显示任何内容。另外,当我使用Msg.HTMLBody
时,我可以在MsgBox
中看到html,但标签中仍然没有任何内容。
对我在这里做错了什么建议?
答案 0 :(得分:2)
我最终自己搞清楚了。
因为我正在使用的电子邮件是IMAP,所以只有主题行才能从服务器下载,直到点击电子邮件,然后下载正文。
我之前可以通过首先访问主题行来访问电子邮件正文:
Set Msg = oNS.GetItemFromID(EntryIDCollection)
MsgBox Msg
MsgBox Msg.Body