Outlook电子邮件中没有正文

时间:2015-07-29 15:07:24

标签: vba email outlook

我试图在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,但标签中仍然没有任何内容。

对我在这里做错了什么建议?

1 个答案:

答案 0 :(得分:2)

我最终自己搞清楚了。

因为我正在使用的电子邮件是IMAP,所以只有主题行才能从服务器下载,直到点击电子邮件,然后下载正文。

我之前可以通过首先访问主题行来访问电子邮件正文:

Set Msg = oNS.GetItemFromID(EntryIDCollection)
MsgBox Msg
MsgBox Msg.Body