【问题标题】:How to apply ItemAdd event to custom folder? Outlook 2010 VBA [duplicate]如何将 ItemAdd 事件应用到自定义文件夹? Outlook 2010 VBA [重复]
【发布时间】:2015-12-04 11:11:37
【问题描述】:

我正在尝试使用 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) 

它不起作用。为什么?添加新电子邮件时如何捕获?

【问题讨论】:

  • ...完美的问题,完全不是标记重复的重复。在子文件夹上触发事件是标记的重复项的子问题,而不是重复项。它更精确。我希望社区在这方面能更加宽容。

标签: vba outlook


【解决方案1】:

因为你没有提到

Private WithEvents olInboxItems As Items

你可能忘记了

Private WithEvents subfolderItems As Items

【讨论】:

  • 是的,这解决了我的问题。谢谢!
【解决方案2】:

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

【讨论】:

    猜你喜欢
    • 2017-06-27
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 2014-07-11
    • 1970-01-01
    • 1970-01-01
    • 2018-11-13
    • 1970-01-01
    相关资源
    最近更新 更多