正在编写一些代码,当项目被移动到与我的默认文件夹(收件箱、已发送等)处于同一级别的“存档”文件夹中时,将它们标记为已读。以下代码是我使用默认已删除项目文件夹进行的初始测试。正确的语法是什么,以便我可以引用存档文件夹中的项目?
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim Ns As Outlook.NameSpace
Set Ns = Application.GetNamespace("MAPI")
Set Items = Ns.GetDefaultFolder(olFolderDeletedItems).Items
End Sub
Private Sub Items_ItemAdd(ByVal Item As Object)
Item.UnRead = False
Item.Save
End Sub
答案1
发现调用 PickFolder 方法比尝试找出如何引用 Archive 文件夹更容易。现在我的代码可以正常运行。
Option Explicit
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim Ns As Outlook.NameSpace
Dim myFolder As Outlook.Folder
Set Ns = Application.GetNamespace("MAPI")
Set myFolder = Ns.PickFolder
Set Items = myFolder.Items
End Sub
Private Sub Items_ItemAdd(ByVal Item As Object)
Item.UnRead = False
Item.Save
End Sub