我知道如何在Outlook中的任何特定文件夹中删除具有附件的邮件。我希望我的宏删除所有有附件的邮件而不管它们进来的文件夹。简单来说,我想删除有附件的邮件,只要它们进入我的Outlook(在任何子文件夹中)下面编码我正在使用从特定文件夹中删除邮件(RED CODE)。我在收件箱下面有更多的子文件夹。
Public WithEvents myOlItems As Outlook.items
Private Sub Application_startup()
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set myOlItems = objNS.GetDefaultFolder(olFolderInbox).Folders("RED CODE").items
End Sub
----------------------------------------------------------------------------
Public Sub myOlItems_ItemAdd(ByVal item As Object)
If item.Attachments.Count > 0 Then
item.Delete
End If
end sub
答案 0 :(得分:0)
您需要有一个数组来保存每个特定文件夹的Items对象(IMAPIFolder.Items) - 这样做是为了确保引发事件的变量保持活动状态。
然后,您需要在每个Items对象上挂钩ItemAdd。