Trabalhando em algum código para marcar itens como lidos quando eles são movidos para minha pasta 'Arquivo', que está no mesmo nível das minhas pastas padrão (Caixa de entrada, Enviados, etc.). O código abaixo foi meu teste inicial usando a pasta padrão de itens excluídos. Qual é a sintaxe adequada para que eu possa fazer referência aos itens da minha pasta Archive?
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
Responder1
Descobrimos que é mais fácil invocar o método PickFolder em vez de tentar descobrir como fazer referência à pasta Archive. Agora meu código funciona corretamente.
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