VBA код для вызова «Очистить папку» в Outlook 2010? - PullRequest
2 голосов
/ 17 октября 2011

Кто-нибудь знает код VBA для вызова команды Outlook 2010 «Очистить папку» в контекстном меню при щелчке правой кнопкой мыши по папке?

Я зашел так далеко в коде VBA, чтобы добраться до папок, которые я хочу очистить:

Private Sub CleanUpAllFolders()
Dim Folders As Outlook.Folders
Dim Folder As Outlook.Folder
Set Folders = Session.GetDefaultFolder(olFolderInbox).Parent.Folders
For Each Folder In Folders
    If Left(Folder.Name, 1) = "_" Then
        ' Clean up folder... how do I invoke that command from VBA on this folder?
    End If
Next
End Sub

Однако я не вижу никакого метода на самом объекте папки, который позволяет мне вызывать «Очистить папку».

Как вызвать одну из этих команд меню правой кнопкой мыши в текущей выбранной папке в VBA?

1 Ответ

2 голосов
/ 26 октября 2011

Я не могу проверить это, но из того, что я прочитал, это может сработать.

Сначала найдите значение idMso для команды.Используйте это, чтобы найти значение:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3582

Затем используйте Application.CommandBars.ExecuteMso(idMso) для выполнения команды.Удачи.

...