【问题标题】:Copy the contents of a table in the body of an email from Outlook Inbox to Excel [closed]将电子邮件正文中的表格内容从 Outlook 收件箱复制到 Excel [关闭]
【发布时间】:2020-06-24 15:37:17
【问题描述】:

我正在使用 Outlook 2010Excel 2010。每天我都会收到 200 封正文中包含 相同主题表格数据 的电子邮件(表格在所有邮件中都是相同的)。我需要将表格中的数据复制到 Excel 中,格式与收到的格式相同。请帮我解决这个问题..

【问题讨论】:

  • 这个问题基本上是this one 的相反用例。您将不需要(显然)创建 OFT 模板文件,但可以使用该框架来处理 WordEditor 对象的 WordEditor 实例,然后您可以处理表格并将其复制/粘贴到 Excel 中。
  • 寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:如何创建minimal reproducible example
  • 这个问题也太宽泛了(你似乎要求一个完全实施的解决方案,而你自己的贡献显然是零努力)。

标签: excel vba outlook


【解决方案1】:

您可以处理NewMailEx 事件以在新邮件到达时获得通知。然后,您可以使用传递给 NewMailEx 事件处理程序的 EntryID 值来获取刚刚到达的项目的实例。 Namespace 类的GetItemFromID 方法返回由指定条目ID 标识的Microsoft Outlook 项(如果有效)。

您也可以考虑处理 Items 类的 ItemAdd 事件。当一个或多个项目添加到指定的集合中时会触发它。请注意,当一次将大量项目添加到文件夹时,此事件不会运行。

您可以在系列文章中阅读更多相关信息:

获取代表传入电子邮件的 MailItem 类的实例后,您可以获取解析邮件正文所需的信息。在 Outlook 中处理正文的主要方式有以下三种:

  1. Body
  2. HTMLBody
  3. 文字编辑器。 Inspector 类提供WordEditor 属性,该属性从代表消息正文的 Word 对象模型返回 Document 类的实例。 Outlook 使用 Word 作为电子邮件编辑器。

您可以在Chapter 17: Working with Item Bodies 中阅读更多相关信息。

【讨论】:

    猜你喜欢
    • 2022-08-20
    • 2012-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多