我假设您在某种程度上熟悉编码,即使不在 Windows 上也是如此。您可能想在 Outlook VBA 上做一些一般性的背景阅读;这方面的一些资源可能是Microsoft 文章、 OutlookCode 中的这篇文章等等 - 那里有大量资源,包括演练和示例。
解决您的特定问题:查看此 Microsoft 知识库文章,其中描述了如何从规则触发脚本。
打开 VBA 编辑器后开始使用的关键是双击左侧的模块,例如ThisOutlookSession
(在“Microsoft Outlook 对象”下)。这应该会给你一个编辑器,你可以将代码粘贴到其中。请记住,(根据上面的 MS 页面)您的过程必须接受 MailItem 对象,该对象将是规则所拥有的项目,因此您提供的链接示例的前几行将从:
Sub SaveEmail()
Dim msg As Outlook.MailItem
' assume an email is selected
Set msg = ActiveExplorer.Selection.Item(1)
' save as text
[...]
...至:
Sub SaveEmail(msg As Outlook.MailItem)
' save as text
[...]
本质上,您将收到一个 MailItem,而不必创建它并将其连接到 Outlook 中的选定项目。
为了实现对文件“运行脚本”的第二个任务,我假设您希望您的 VBA 在文件保存后对其进行更改?这在 VBA 中非常简单,您会找到很多示例。这个答案中有一个非常简单的大纲。
根据评论进行编辑:要启动外部工具,Shell
如果不需要等待它完成,您可以使用命令,或者您可以使用浮动的许多 Shell-and-wait 实现之一,例如这个流行的一种。或者,您可以使用此答案WScript
中的方法。
请注意,您需要确保将 Outlook 设置为允许运行宏,并且您可能需要对代码进行签名。