Direkt zum Inhalt

Wie lösche ich alle leeren Ordner in Outlook im Stapel?

Angenommen, in Outlook befinden sich Dutzende leerer Ordner unter einem E-Mail-Ordner. Im Allgemeinen können wir die leeren Ordner einzeln löschen, indem Sie mit der rechten Maustaste auf das Menü klicken. Im Vergleich zum wiederholten Klicken mit der rechten Maustaste wird in diesem Artikel ein VBA eingeführt, mit dem alle leeren Unterordner eines Outlook-Ordners in großen Mengen schnell gelöscht werden können.

Batch löschen Sie alle leeren Ordner in Outlook mit VBA

Office-Registerkarte – Ermöglichen Sie das Bearbeiten und Durchsuchen mit Registerkarten in Microsoft Office und machen Sie die Arbeit zum Kinderspiel
Kutools für Outlook – Steigern Sie Outlook mit über 100 erweiterten Funktionen für überragende Effizienz
Verbessern Sie Ihr Outlook 2021 – 2010 oder Outlook 365 mit diesen erweiterten Funktionen. Genießen Sie eine umfassende 60-tägige kostenlose Testversion und verbessern Sie Ihr E-Mail-Erlebnis!

Pfeil blau rechte BlaseBatch löschen Sie alle leeren Ordner in Outlook mit VBA

Gehen Sie wie folgt vor, um alle leeren Unterordner eines bestimmten Outlook-Ordners zu entfernen:

1. Drücken Sie Andere + F11 Tasten zum Öffnen des Fensters Microsoft Visual Basic für Applikationen.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden VBA-Code in das neue Modulfenster ein.

VBA: Löschen Sie alle leeren Unterordner eines bestimmten Outlook-Ordners in großen Mengen

Public Sub DeletindEmtpyFolder()
Dim xFolders As Folders
Dim xCount As Long
Dim xFlag As Boolean
Set xFolders = Application.GetNamespace("MAPI").PickFolder.Folders
Do
FolderPurge xFolders, xFlag, xCount
Loop Until (Not xFlag)
If xCount > 0 Then
MsgBox "Deleted " & xCount & "(s) empty folders", vbExclamation + vbOKOnly, "Kutools for Outlook"
Else
MsgBox "No empty folders found", vbExclamation + vbOKOnly, "Kutools for Outlook"
End If
End Sub

Public Sub FolderPurge(xFolders, xFlag, xCount)
Dim I As Long
Dim xFldr As Folder 'Declare sub folder objects
xFlag = False
If xFolders.Count > 0 Then
For I = xFolders.Count To 1 Step -1
Set xFldr = xFolders.Item(I)
If xFldr.Items.Count < 1 Then 'If the folder is empty check for subfolders
If xFldr.Folders.Count < 1 Then 'If the folder contains not sub folders confirm deletion
xFldr.Delete 'Delete the folder
xFlag = True
xCount = xCount + 1
Else 'Folder contains sub folders so confirm deletion
FolderPurge xFldr.Folders, xFlag, xCount
End If
Else 'Folder contains items or (subfolders that may be empty).
FolderPurge xFldr.Folders, xFlag, xCount
End If
Next
End If
End Sub

3. Drücken Sie F5 Schlüssel oder Führen Sie Schaltfläche zum Ausführen dieses VBA-Codes.

4. Wählen Sie im Dialogfeld Ordner auswählen den bestimmten Ordner aus, dessen leere Unterordner Sie in großen Mengen löschen möchten, und klicken Sie auf OK Taste. Siehe Screenshot:

5. Nun wird ein Dialogfeld von Kutools für Outlook angezeigt, in dem angezeigt wird, wie viele leere Unterordner gelöscht wurden. Drücke den OK Schaltfläche, um es zu schließen.

Bisher wurden alle Unterordner des angegebenen Outlook-Ordners bereits in großen Mengen gelöscht.


Pfeil blau rechte BlaseÄhnliche Artikel

Suchen Sie den Ordner (vollständiger Ordnerpfad) anhand des Ordnernamens in Outlook


Beste Office-Produktivitätstools

Kutools for Outlook - Über 100 leistungsstarke Funktionen zur Optimierung Ihres Outlooks

📧 E-Mail Automation: Abwesenheit (verfügbar für POP und IMAP)  /  Planen Sie das Senden von E-Mails  /  Automatisches CC/BCC nach Regeln beim E-Mail-Versand  /  Automatische Weiterleitung (erweiterte Regeln)   /  Begrüßung automatisch hinzufügen   /  Teilen Sie E-Mails mit mehreren Empfängern automatisch in einzelne Nachrichten auf ...

📨 E-Mail-Management: E-Mails einfach abrufen  /  Blockieren Sie betrügerische E-Mails nach Betreff und anderen  /  Doppelte E-Mails löschen  /  Erweiterte Suche  /  Ordner konsolidieren ...

📁 Anhänge ProBatch speichern  /  Stapeltrennung  /  Stapelkomprimierung  /  Automatisches Speichern   /  Automatische Trennung  /  Automatische Komprimierung ...

???? Schnittstellenmagie: 😊Mehr hübsche und coole Emojis   /  Steigern Sie Ihre Outlook-Produktivität mit Registerkartenansichten  /  Ausblick minimieren statt schließen ...

👍 Wunder mit einem Klick: Allen mit eingehenden Anhängen antworten  /   Anti-Phishing-E-Mails  /  🕘Zeitzone des Absenders anzeigen ...

👩🏼‍🤝‍👩🏻 Kontakte und Kalender: Fügen Sie Kontakte aus ausgewählten E-Mails im Stapel hinzu  /  Teilen Sie eine Kontaktgruppe in einzelne Gruppen auf  /  Geburtstagserinnerungen entfernen ...

Auf über 100 Eigenschaften Warten Sie auf Ihre Erkundung! Klicken Sie hier, um mehr zu erfahren.

 

 

Comments (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This worked great for me. Thank you. Some folders cannot be deleted as they are native to Outlook, but the sub-folders work great.
This comment was minimized by the moderator on the site
74 empty folders were deleted but unfortunately also 109 folders that were not. Other empty folders were left untouched.
This comment was minimized by the moderator on the site
Super easy and incredibly helpful. Thank you!!
This comment was minimized by the moderator on the site
I am getting the same error like Bryan.... and now?
This comment was minimized by the moderator on the site
The script tries to delete a folder that was already deleted.
I added a row after xFlag = False with this content:
on error resume next
This comment was minimized by the moderator on the site
I am getting the following error when run the above " Run-time error '-2147352567 (80020009)' Cannot delete this folder. Right-click the folder, and then click properties to check your permissions for the folder. See the folder owner or your administrator to change your permissions"

It appears the script moves 1 item to the deleted folder and then errors out.
This comment was minimized by the moderator on the site
Agree - I get the same error.
This comment was minimized by the moderator on the site
The script tries to delete a folder that was already deleted.
I added a row after xFlag = False with this content:
on error resume next
This comment was minimized by the moderator on the site
Indeed, add:

On Error Resume Next

AFTER:

Dim x Fldr As Folder 'Declare sub folder objects
xFlag = False

It should look like this:

Dim x Fldr As Folder 'Declare sub folder objects
xFlag = False
On Error Resume Next
This comment was minimized by the moderator on the site
Brilliant!!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations