excel - 使用 Outlook VBA 触发 Excel 宏读取电子邮件内容
问题描述
我写了一个 Outlook 宏来调用一个 excel 宏来读取目标电子邮件内容并将其写入 excel 表。
目标电子邮件进来 --> excel 宏运行并在 Outlook 中搜索电子邮件 --> 将内容读入 excel
我遇到的问题是如果在excel上手动触发excel宏可以成功运行。当宏通过outlook VBA触发时,excel宏只能读取第251行的电子邮件内容。谁能帮助我或建议一种调试方法?
在 Outlook 中,我尝试触发 excel 宏,如下所示:
'Debug.Print "Opening excel file"
Set Wb = XlAPP.Workbooks.Open(File)
Set Ws = Wb.Sheets("Read Me")
Ws.Activate
'Debug.Print "Run Macro"
Wb.Application.Wait (Now + TimeValue("0:00:05"))
Wb.Application.Run "Module1.getDataFromOutlook"
在 excel 中,我检查电子邮件内容中有多少行,如下所示:
'split email content into rows
Content = item.Body
'Application.Wait (Now + TimeValue("0:00:05"))
Debug.Print Len(Content)
Lines = Split(Content, vbCrLf)
我的 excel 宏调试打印结果附在下面的屏幕截图中。
在此先感谢您的帮助!
解决方案
Outlook 对象模型在处理邮件正文时不提供任何限制。有关 Excel 限制的详细信息,请参阅Excel 规范和限制。
Outlook 对象模型提供了三种处理项目正文的主要方法:
- 身体。
- HTML 正文。
- Word 编辑器。Inspector 类的WordEditor属性返回代表消息正文的 Word 文档实例。
有关详细信息,请参阅第 17 章:使用项目实体。
从您在那里发布的代码行中不清楚为什么会有差异。您需要从getDataFromOutlook
sub 发布完整代码以获得任何有价值的反馈。
推荐阅读
- moodle - 根据用户角色创建 CSS 类
- java - java中的arraylist,打印出所有数据
- youtube-api - 使用 Youtube Data API 使我的视频在上传时成为私密视频
- c# - 输入字符串的格式不正确 - 传递 NULL 值时
- html - WebStorm - 实时模板 - Twig + Html 不起作用
- reactjs - 如何删除 React Navigation 5 中每个选项卡屏幕的标题?
- kubernetes - 微服务 API 网关和 Identity Server 4 kubernates
- php - localhost:xxxx 数据库连接更改为 TCP/IP?
- reactjs - React Hook 函数 useEffect
- mysql - 查询列出与指定用户回答类似问题的用户