如何将ItemAdd事件应用于自定义文件夹? Outlook 2010 VBA

时间:2015-12-04 00:24:36

标签: vba outlook

我正在尝试使用ItemAdd事件方法来监控新项目何时添加到收件箱下的子文件夹中。

我的目录结构是这样的:

- Inbox 
- - subfolder

我想在将新电子邮件添加到子文件夹时运行代码(原因是我使用的规则将某些电子邮件重定向到此子文件夹)。

目前我正在使用以下方式监控我的收件箱:

Private Sub Application_Startup()
   Set olInboxItems = Session.GetDefaultFolder(olFolderInbox).items
End Sub

Private Sub olInboxItems_ItemAdd(ByVal Item As Object)
/* Code here */ 
End Sub 

但是当我尝试为子文件夹

Set subfolderItems = Session.GetDefaultFolder(olFolderInbox).Folders("subfolder").items 
Private Sub subfolderItems_ItemAdd(ByVal Item As Object) 

它没有用。为什么?如何在添加新电子邮件时捕获?

2 个答案:

答案 0 :(得分:2)

因为你没有提到

Private WithEvents olInboxItems As Items

你可能忘记了

Private WithEvents subfolderItems As Items

答案 1 :(得分:1)

确保在全局级别声明subfolderItems变量以确保它保持活动状态。