Auflisten von Ordnern in allen Speichern

In diesem Thema wird ein Codebeispiel gezeigt, in dem alle Ordner in allen Speichern für eine Sitzung aufgezählt werden.

  1. Im Codebeispiel werden zunächst alle Speicher für die aktuelle Sitzung mithilfe der NameSpace.Stores -Eigenschaft der aktuellen Sitzung, Application.Session, abgerufen.

  2. Für jeden Speicher dieser Sitzung wird Store.GetRootFolder verwendet, um den Ordner im Stamm des Speichers abzurufen.

  3. Für den Stammordner jedes Speichers ruft er iterativ die EnumerateFolders Prozedur auf, bis er den Namen der einzelnen Ordner in dieser Struktur besucht und angezeigt hat.

HinwBemerkungeneise

Zum Ausführen dieses Codebeispiels platzieren Sie den Code im integrierten ThisOutlookSession -Modul. Führen Sie die EnumerateFoldersInStores-Prozedur aus:

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

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.