1

Работаю над кодом, чтобы пометить элементы как прочитанные, когда они перемещаются в мою папку «Архив», которая находится на том же уровне, что и папки по умолчанию (Входящие, Отправленные и т.д.). Код ниже был моим первоначальным тестом с использованием папки удаленных элементов по умолчанию. Каков правильный синтаксис, чтобы я мог ссылаться на элементы в моей папке «Архив»?

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 ответ1

1

Обнаружено, что проще вызывать метод PickFolder, а не пытаться выяснить, как обращаться к папке архива. Теперь мой код работает правильно.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .