仅转发特定文件夹中的电子邮件

仅转发特定文件夹中的电子邮件

我在 Super User 上看到了一篇帖子,其中解答了有关 Outlook 电子邮件转发的问题。一位用户提供了一个可用的脚本。

Sub AutoForwardAllSentItems(Item As Outlook.MailItem)
Dim strMsg As String
Dim myFwd As Outlook.MailItem

Set myFwd = Item.Forward

myFwd.Recipients.Add "[email protected]"
myFwd.Send
Set myFwd = Nothing 
End Sub

这对我来说很好,但如果我只想自动转发特定文件夹中的电子邮件,该怎么办?该文件夹已在收到电子邮件后自动定向到该文件夹​​。有什么想法吗?

答案1

假设您使用规则将电子邮件重定向到文件夹中,则可以在相同的规则中运行此脚本,因此它仅适用于相同的条件。

否则,可以修改宏以查找当前文件夹中的未读邮件并转发它们。然后,您只需在该文件夹中定期手动运行宏(为其提供快捷方式以方便操作),它就会为您转发。

Sub ForwardUnreadInFolder()
  Dim CurItem As Outlook.MailItem
  Dim myFwd As Outlook.MailItem
  Dim strMsg As String

  Set CurFolder = Application.ActiveExplorer.CurrentFolder
  Set AllItems = CurFolder.Items
  NumItems = CurFolder.Items.Count

  For i = 1 To NumItems

    DoEvents

    Set CurItem = AllItems.Item(i)

    If (CurItem.UnRead) Then

        Set myFwd = CurItem.Forward
        myFwd.Recipients.Add "[email protected]"
        myFwd.Send
        Set myFwd = Nothing

    End If

  Next

   MsgBox "Done"
End Sub

相关内容