Outlook 2010 创建文件夹和子文件夹

Outlook 2010 Creating Folders and Subfolders

我有这段代码可以在当前选定的文件夹下创建一系列文件夹:

Public Sub CreateFolders()
Dim CurrentFolder As Outlook.MAPIFolder
Dim Subfolder As Outlook.MAPIFolder
Dim List As New VBA.Collection
Dim Folders As Outlook.Folders
Dim Item As Variant

List.Add Array("Audio Video Graphics", olFolderInbox)
List.Add Array("Close Out", olFolderInbox)
List.Add Array("Correspondence", olFolderInbox)
List.Add Array("Expenditure Adjustments", olFolderInbox)
List.Add Array("Invoices", olFolderInbox)
List.Add Array("Project Schedule", olFolderInbox)
List.Add Array("RADPARs and Contracts", olFolderInbox)
List.Add Array("REQs and POs", olFolderInbox)
List.Add Array("Technical Information", olFolderInbox)

Set CurrentFolder = Application.ActiveExplorer.CurrentFolder
Set Folders = CurrentFolder.Folders
For Each Item In List
    Folders.Add Item(0), Item(1)
Next
End Sub

我想做的是在 "REQs and POs" 文件夹下添加一个名为 Proposal 的子文件夹。

这用于在 public 文件夹上创建文件夹。我以前从未在 VBA 中编写过代码,而且我一辈子都想不出如何添加子文件夹。

我一直在网上四处寻找,但找不到任何东西。

如有任何帮助,我们将不胜感激。

试试这个。

Public Sub CreateFolders()
Dim CurrentFolder As Outlook.MAPIFolder
Dim Subfolder As Outlook.MAPIFolder
Dim List As New VBA.Collection
Dim Folders As Outlook.Folders
Dim Item As Variant

List.Add Array("Audio Video Graphics", olFolderInbox)
List.Add Array("Close Out", olFolderInbox)
List.Add Array("Correspondence", olFolderInbox)
List.Add Array("Expenditure Adjustments", olFolderInbox)
List.Add Array("Invoices", olFolderInbox)
List.Add Array("Project Schedule", olFolderInbox)
List.Add Array("RADPARs and Contracts", olFolderInbox)
List.Add Array("REQs and POs", olFolderInbox)
List.Add Array("Technical Information", olFolderInbox)

Set CurrentFolder = Application.ActiveExplorer.CurrentFolder
Set Folders = CurrentFolder.Folders
For Each Item In List
    Folders.Add Item(0), Item(1)
Next

Set Folders = CurrentFolder.Folders.Item("REQs and POs").Folders

' or simply
'Set Folders = CurrentFolder.Folders("REQs and POs").Folders

Folders.Add "Proposal", olFolderInbox

End Sub