我在 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