在Outlook 2010中调用“清理文件夹”的VBA代码?

时间:2011-10-17 01:47:10

标签: vba outlook outlook-vba outlook-2010

右键单击文件夹时,是否有人知道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

但是,我在Folder对象本身上看不到任何允许我调用“清理文件夹”的方法。

如何在VBA中的当前所选文件夹上调用其中一个右键单击菜单命令?

1 个答案:

答案 0 :(得分:2)

我无法测试这个,但从我读到的内容可能会有用。

首先找到该命令的 idMso 值。使用它来查找值:

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

然后使用Application.CommandBars.ExecuteMso(idMso)执行命令。祝你好运。