Note: The other languages of the website are Google-translated. Back to English

Comment compter le nombre de sous-dossiers dans certains dossiers dans Outlook?

Supposons que vous ayez créé des dossiers sous un dossier racine. Maintenant, vous voulez savoir combien de sous-dossiers sous le dossier racine, comment pouvez-vous faire? Développez simplement le dossier racine et comptez manuellement tous les sous-dossiers un par un? Cet article vous présentera une méthode simple pour y parvenir.

Compter le nombre de sous-dossiers avec le code VBA


Compter le nombre de sous-dossiers avec le code VBA

Le code VBA suivant peut vous aider à compter le nombre de sous-dossiers sous un certain dossier racine dans Outlook. Veuillez faire comme suit.

1. appuie sur le autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module. Ensuite, copiez et collez ci-dessous le code VBA dans la fenêtre Code.

Code VBA: comptez le nombre de sous-dossiers sous certains dossiers dans Outlook

Sub CountSubFldsUnderRootFolder()
Dim xRootFolder As Folder
Dim xFolderCount As Long
Dim xFolder As Object
On Error Resume Next
'Set xRootFolder = Outlook.Application.ActiveExplorer.CurrentFolder
Set xRootFolder = Outlook.Application.Session.PickFolder
If TypeName(xRootFolder) = "Nothing" Then Exit Sub
If xRootFolder.Folders.Count < 1 Then
    MsgBox "No subfolders under " & Chr(34) & xRootFolder.Name & Chr(34) & ".", vbInformation, "Kutools for Outlook"
    Exit Sub
End If
For Each xFolder In xRootFolder.Folders
    If xFolder.Name <> "Conversation Action Settings" And xFolder.Name <> "Quick Step Settings" Then
        xFolderCount = xFolderCount + 1
        Call ProcessFolders(xFolder, xFolderCount)
    End If
Next
MsgBox xFolderCount & " subfolders under " & Chr(34) & xRootFolder.Name & Chr(34) & ".", vbInformation, "Kutools for Outlook"
End Sub

Sub ProcessFolders(SubFolder As MAPIFolder, Num As Long)
Dim xSubFolder As MAPIFolder
On Error Resume Next
Num = Num + SubFolder.Folders.Count
For Each xSubFolder In SubFolder.Folders
    Call ProcessFolders(xSubFolder, Num)
Next
End Sub

3. Press the F5 key to run the code.

4. In the opening Select Folder dialog box, select a folder you will count its subfolders, and then click the OK button. See screenshot:

5. Then a Kutools for Outlook dialog box pops up to tell you how many subfolders exist in the specified folder. See screenshot:


Related articles:


Kutools for Outlook - Brings 100 Advanced Features to Outlook, and Make Work Much Easier!

  • Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by custom; Auto Reply without exchange server, and more automatic features...
  • BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
  • Reply (All) With All Attachments in the mail conversation; Reply Many Emails in seconds; Auto Add Greeting when reply; Add Date into subject...
  • Attachment Tools: Manage All Attachments in All Mails, Auto Detach, Compress All, Rename All, Save All... Quick Report, Count Selected Mails...
  • Powerful Junk Emails by custom; Remove Duplicate Mails and Contacts... Enable you to do smarter, faster and better in Outlook.
shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121
 
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Ich weiß gar nicht, ob ich hier auch Fragen stellen kann zu gefundenen Makros?Also mache ich es einfach mal, ok?
Das Makro zum Ermitteln der Anzahl von Unterordnern habe ich für meinen Zweck, nämlich in Ordnereigenschaften einzustellen, dass alle Elemente im Ordner angezeigt werden sollen im Verzeichnisbaum links in Outlook habe ich jetzt mal so für mich verändert.
Sub PrivateOrdnerAlleMailsAnzeigen()
Dim xRootFolder As Folder
Dim xFolderCount As Long
Dim xFolder As Object
On Error Resume Next

Neu:
Set xRootFolder = Outlook.Application.Session.PickFolder
If TypeName(xRootFolder) = "Nothing" Then Exit Sub
If xRootFolder.Folders.Count < 1 Then
MsgBox "No subfolders under " & Chr(34) & xRootFolder.Name & Chr(34) & ".", vbInformation, "Kutools for Outlook"
Exit Sub
End If
xRootFolder.ShowItemCount = olShowTotalItemCount
For Each xFolder In xRootFolder.Folders
xFolder.ShowItemCount = olShowTotalItemCount
xFolderCount = xFolderCount + 1
Next
MsgBox xFolderCount & " Ordner konfiguriert.", vbInformation, "Anzeigeart Elemente im Ordner"
xFolderCount = 1
GoTo Neu
End Sub


Das funktioniert auch gut aber es fehlt noch etwas, das ich nicht wirklich eingebaut bekomme.
Dabei geht es darum, dass einige Ordner unter dem Ordner, der ausgewählt wird, noch Unterordner haben, die im Ablauf aber nicht mit bearbeitet werden.

Deshalb der Weg jetzt über Goto Neu und dann Neuauswahl der Unterordner und zuletzt mit manuellem Abbrechen beenden.

Wenn mal bitte jemand drüber schauen und eventuell dafür eine automatische Lösung hätte, wäre ich Euch dankbar.

Gruß Wolfgang
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations