Как написать макрос в Outlook 2007 для перемещения элемента из папки "Входящие" в другую папку и маркировать его как непрочитанные?

Я хотел бы иметь макрос в Outlook 2007 для перемещения выбранных элементов в подпапки моего почтового ящика, отмечая их как непрочитанные, как я иду. Таким образом, я могу назначить кнопки для быстрого перемещения элементов в мою сделку сегодня и дело на этой неделе папки.

большое спасибо,

Sam

15
задан Sam Meldrum
10.05.2023 6:33 Количество просмотров материала 3502
Распечатать страницу

1 ответ

Я искал этот вопрос на сайте и в других местах в сети и не мог быстро придумать простой ответ, поэтому написал код сам. Вот для следующего человека, который хочет этого достичь:

Option Explicit

Public Sub Today()

Dim myFolder As Folder

    Set myFolder = GetInboxSubFolder("* 0. Today")
    If Not myFolder Is Nothing Then
        MoveItemAndMarkAsUnread myFolder
    End If

End Sub

Private Function GetInboxSubFolder(folderName As String) As Folder

Dim myNamespace As NameSpace
Dim myInbox As Folder

    Set myNamespace = Application.GetNamespace("MAPI")
    Set myInbox = myNamespace.GetDefaultFolder(olFolderInbox)
    Set GetInboxSubFolder = myInbox.Folders(folderName)

End Function

Private Sub MoveItemAndMarkAsUnread(myFolder As Folder)

Dim myExplorer As Explorer
Dim mySelection As Selection

    Set myExplorer = Application.ActiveExplorer
    Set mySelection = myExplorer.Selection

Dim i As Integer
Dim myItem As MailItem

    For i = mySelection.Count To 1 Step -1

        mySelection.Item(i).UnRead = True
        mySelection.Item(i).Move myFolder

    Next i

End Sub

надеюсь, что это кому-то пригодится

2
отвечен Sam Meldrum 2023-05-11 14:21

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх