Vba Outlook脚本:转发不带附件的电子邮件
我正在寻找一个脚本转发所有传入的电子邮件到一个通讯组,但没有附件。我需要将附件保留在原始电子邮件中,这样它就不能被删除。我正在使用Microsoft Outlook 2010 因此,为了清楚起见:电子邮件附带了一些东西。我想把这封邮件连同附件一起转发到另一个地址,同时原封未动 提前感谢任何能提供帮助的人Vba Outlook脚本:转发不带附件的电子邮件,vba,email,outlook,Vba,Email,Outlook,我正在寻找一个脚本转发所有传入的电子邮件到一个通讯组,但没有附件。我需要将附件保留在原始电子邮件中,这样它就不能被删除。我正在使用Microsoft Outlook 2010 因此,为了清楚起见:电子邮件附带了一些东西。我想把这封邮件连同附件一起转发到另一个地址,同时原封未动 提前感谢任何能提供帮助的人 编辑:此过程需要在收到此地址的每封电子邮件上自动进行。将以下代码放入您的ThisOutlookSession模块: Private Sub Application_NewMailEx(ByVal
编辑:此过程需要在收到此地址的每封电子邮件上自动进行。将以下代码放入您的
ThisOutlookSession
模块:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim varEntryID As Variant
For Each varEntryID In Split(EntryIDCollection, ",")
Dim objOriginalItem As MailItem
Set objOriginalItem = Application.GetNamespace("MAPI").GetItemFromID(varEntryID)
Dim objForwardedItem As MailItem
Set objForwardedItem = objOriginalItem.Forward
Do Until objForwardedItem.Attachments.Count = 0
objForwardedItem.Attachments.Remove (1)
Loop
objForwardedItem.To = "toemailaddress@domain.com"
objForwardedItem.Send
Next
End Sub
可以在项目资源管理器中的VBA IDE(Alt+F11)中访问此模块:
Project>Microsoft Outlook Objects>ThisOutlookSession
这会自动发生吗?或者它会从功能区上的一个按钮发生吗?它需要自动发生对不起,我应该在原始问题中包含这个,所以我会编辑它。。但它需要在收到的每封电子邮件上自动发生。请原谅我的无知,但我如何在收到的邮件上运行它?它将在新邮件到达时运行,因为它位于应用程序\u NewMailEx
事件处理程序中。这是一个内置事件处理程序,您可以从ThisOutlookSession
模块内部在Outlook VBA中使用。它不起作用。我将代码放入ThisOutlookSession模块,但当收到电子邮件时,什么也不会发生。我还确保更改了“转发到”电子邮件地址。有宏可用吗?Outlook是否设置为信任宏?在Outlook选项“信任中心”页面>“信任中心设置”按钮>“宏设置”页面下进行检查--确保选中“启用所有宏”。此外,您还可以通过创建一个“Sub test()”来运行一个简单的测试,该“Sub test()”在子主体中只包含一个Msgbox(“testing”),然后将光标放在主体中并点击F5。如果看到该对话框,宏正在工作。