脚本:用户发送“请求”后,转发收件箱中的所有电子邮件(Outlook 2003)

脚本:用户发送“请求”后,转发收件箱中的所有电子邮件(Outlook 2003)

我正在寻找 Outlook(2003)脚本。

我需要的: 我想将邮箱 A(通过 PC)中的所有电子邮件转发到邮箱 B(通过手机)。问题是:只有当我向邮箱 A 发送“请求”时,此规则才会运行。

我做了什么: 我在 Outlook 2003 中创建了两条规则。

规则 1- 此规则将所有电子邮件从邮箱 A 转发到邮箱 B。此规则有效,但不是自动的(仅当我按下“运行规则”按钮时才运行)。我只想在“需要时”接收电子邮件。

规则 2- 我在 Outlook 中创建了第二条规则。当邮箱 A 收到一封以“get_mail”为邮件主题的邮件时,此规则(自动)启动。

我的目标: 我想要规则2启动一个脚本。显然,这个脚本应该运行规则1。

结果: 来自邮箱 A 的所有电子邮件都被转发到邮箱 B。

背景: 我的目标是在上下班途中用手机阅读工作邮件。通过从手机向 PC 发送电子邮件(邮件主题为 get_mail),我的 PC(邮箱-A)会将所有邮件转发到我的手机(邮箱-B)。

使用 VBA 可以实现吗?代码应该是什么样子的?我没有编写脚本的经验,但我对 PC 和软件很在行。所以当有人提供代码时我应该能够安装它。

附言无法简单地在我的手机上安装 pop/imap 帐户)

答案1

是的,可以让一条规则触发另一条规则。以下是适用于 Outlook 的 VBA 程序,应该可以运行:

Sub RunRuleToForwardEmail(MyMail As MailItem)

    Dim st As Outlook.Store
    Dim myRule As Outlook.Rule

    ' get default store (where rules live)
    Set st = Application.Session.DefaultStore
    ' get rule
    Set myRule = st.GetRules("change_this_to_whatever_the_the_name_of_rule1_is") 'change this line
    myRule.Execute

End Sub

请记住更改此文本:change_this_to_whatever_the_the_name_of_rule1_is

保存 Outlook VBA 项目后,编辑规则 2 的操作。然后,您应该能够在选项列表中选择上述脚本。

相关内容