列舉所有存放區上的資料夾
這個主題中的程式碼範例會說明如何列舉工作階段所有儲存區中的所有資料夾。
程式碼範例一開始會使用目前會話的NameSpace.Stores屬性取得目前會話的所有存放區。
Application.Session
對於這個工作階段的每個儲存區,會使用 Store.GetRootFolder 取得該儲存區根目錄中的資料夾集合。
針對每個存放區的根資料夾,它會反復呼叫程式,
EnumerateFolders
直到它流覽並顯示該樹狀結構中每個資料夾的名稱為止。
註解
若要執行這個程式碼範例,請將程式碼置於內建的 ThisOutlookSession 模組中。 執行 EnumerateFoldersInStores
程序:
Sub EnumerateFoldersInStores()
Dim colStores As Outlook.Stores
Dim oStore As Outlook.Store
Dim oRoot As Outlook.Folder
On Error Resume Next
Set colStores = Application.Session.Stores
For Each oStore In colStores
Set oRoot = oStore.GetRootFolder
Debug.Print (oRoot.FolderPath)
EnumerateFolders oRoot
Next
End Sub
Private Sub EnumerateFolders(ByVal oFolder As Outlook.Folder)
Dim folders As Outlook.folders
Dim Folder As Outlook.Folder
Dim foldercount As Integer
On Error Resume Next
Set folders = oFolder.folders
foldercount = folders.Count
'Check if there are any folders below oFolder
If foldercount Then
For Each Folder In folders
Debug.Print (Folder.FolderPath)
EnumerateFolders Folder
Next
End If
End Sub
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應