vba - 使用 Word VBA Outlook 电子邮件正文为空白
问题描述
我在 Outlook 中制作了以下 vba 脚本,当我收到电子邮件正文时它工作正常。我将脚本移动到 word vba,现在当我收到电子邮件正文时,它是空的。我可以正常访问主题和其他字段,但电子邮件正文字段为空白。如何访问电子邮件的正文?
Dim appOutlook As Object
Dim olNs As Object
Dim olFolder As Object
Dim olItem As Object
Dim iRow As Integer
Dim email_body As String
' Get/create Outlook Application
On Error Resume Next
Set appOutlook = GetObject(, "Outlook.Application")
If appOutlook Is Nothing Then
Set appOutlook = CreateObject("Outlook.Application")
End If
On Error GoTo 0
Set olNs = appOutlook.GetNamespace("MAPI")
Set olFolder = olNs.GetDefaultFolder(6) _
.Parent.Folders("folder2") ' 6 == Inbox for some reason
For iRow = 1 To olFolder.Items.Count
Next iRow
For Each myItem In olFolder.Items
myItem.Display
Dim Email As Outlook.MailItem
Set Email = appOutlook.ActiveInspector.CurrentItem
myItem.Close olDiscard
'Word document
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")
Dim wdDoc As Word.Document
Set wdDoc = wdApp.Documents.Add
wdDoc.Activate
Dim wdRange As Word.Range
Set wdRange = wdDoc.Range(0, 0)
email_body = Email.Body
解决方案
在以下代码中,您遍历文件夹中的所有项目并在 Outlook 的新检查器窗口中显示每个项目:
For Each myItem In olFolder.Items
MsgBox myItem.Body
无需调用该Display
方法来获取实际的邮件项。相反,您可以使用现有的参考。
推荐阅读
- keycloak - Keycloak 和 Vault 与客户端角色的集成
- ios - IOS 13 不使用 FirebasePushNotificationPlugin 播放通知声音
- vue.js - 带有 v-model 的自定义开关组件不起作用
- ruby-on-rails - ActiveRecordy has_many 通过我需要找到至少一个孩子满足条件的所有父母
- angular - docker-compose:尝试使用 oauth 身份验证安装 MDBoostrap Pro 时出错
- reactjs - 使用 Jest 测试处理 webpack 加载器语法:感叹号 raw-loader
- amazon-web-services - k8s服务开放端口后大量连接日志
- ssl - 在 Tomcat 5.5 Http11Protocol 中启用 TLS 1.2
- asp.net - 如何在 asp.net mvc core 中显示自定义的 404 错误页面
- python - 更改 3D 图像像素的颜色并保存