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

Comment supprimer par lots tous les dossiers vides dans Outlook?

Supposons qu'il y ait des dizaines de dossiers vides sous un dossier de messagerie dans Outlook, généralement nous pouvons supprimer les dossiers vides un par un en cliquant avec le bouton droit sur le menu. Par rapport au clic droit à plusieurs reprises, cet article présentera un VBA pour supprimer rapidement tous les sous-dossiers vides d'un dossier Outlook en masse.

Supprimer par lots tous les dossiers vides dans Outlook avec VBA

Onglet Office - Activez la modification et la navigation par onglets dans Office et simplifiez considérablement le travail ...
Kutools for Outlook - apporte 100 fonctionnalités avancées puissantes à Microsoft Outlook
  • CC / BCC automatique par des règles lors de l'envoi d'e-mails; Transfert automatique Emails multiples par règles; Réponse automatique sans serveur d'échange, et plus de fonctionnalités automatiques ...
  • Avertissement BCC - afficher le message lorsque vous essayez de répondre à tous si votre adresse e-mail est dans la liste BCC; Rappeler en cas de pièces jointes manquantes, et plus de fonctionnalités de rappel ...
  • Répondre (à tous) avec toutes les pièces jointes dans la conversation par courrier; Répondre à plusieurs e-mails à la fois; Ajouter un message d'accueil automatique quand répondre; Ajout automatique de la date et de l'heure au sujet ...
  • Outils de fixation: Détacher automatiquement, Tout compresser, Tout renommer, Tout enregistrer automatiquement ... Rapport rapide, Compter les courriers sélectionnés, Supprimer les messages et contacts en double ...
  • Plus de 100 fonctionnalités avancées résoudre la plupart de vos problèmes dans Outlook 2010-2019 et 365. Fonctionnalités complètes Essai gratuit de 60 jours.

flèche bleue bulle droiteSupprimer par lots tous les dossiers vides dans Outlook avec VBA

Pour supprimer tous les sous-dossiers vides d'un certain dossier Outlook, procédez comme suit:

1. presse autre + F11 touches pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2Cliquez sur insérer > Module, et collez ci-dessous le code VBA dans la nouvelle fenêtre du module.

VBA: supprimez tous les sous-dossiers vides de certains dossiers Outlook en masse

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. presse F5 Clé ou course bouton pour exécuter ce code VBA.

4. Dans la boîte de dialogue contextuelle Sélectionner un dossier, sélectionnez le dossier spécifique dont vous allez supprimer les sous-dossiers vides en bloc, puis cliquez sur le bouton OK bouton. Voir la capture d'écran:

5. Maintenant, une boîte de dialogue Kutools for Outlook apparaît et vous montre combien de sous-dossiers vides ont été supprimés. Clique le OK bouton pour le fermer.

Jusqu'à présent, tous les sous-dossiers du dossier Outlook spécifié ont déjà été supprimés en masse.


flèche bleue bulle droiteArticles Relatifs

Rechercher le dossier (chemin d'accès complet au dossier) par nom de dossier dans Outlook


Kutools for Outlook - Apporte 100 fonctionnalités avancées à Outlook et simplifie grandement le travail!

  • CC / BCC automatique par des règles lors de l'envoi d'e-mails; Transfert automatique Emails multiples par coutume; Réponse automatique sans serveur d'échange, et plus de fonctionnalités automatiques ...
  • Avertissement BCC - afficher le message lorsque vous essayez de répondre à tous si votre adresse e-mail est dans la liste BCC; Rappeler en cas de pièces jointes manquantes, et plus de fonctionnalités de rappel ...
  • Répondre (à tous) avec toutes les pièces jointes dans la conversation par courrier électronique; Répondre à de nombreux e-mails en secondes; Ajouter un message d'accueil automatique quand répondre; Ajouter la date au sujet ...
  • Outils de pièces jointes: gérer toutes les pièces jointes dans tous les courriers, Détachement automatique, Compresser tout, Tout renommer, Tout enregistrer ... Rapport rapide, Compter les courriers sélectionnésplus
  • Courriels indésirables puissants par coutume; Supprimer les messages et contacts en doubleplus Vous permettre de faire plus intelligemment, plus rapidement et mieux dans Outlook.
tir kutools outlook onglet kutools 1180x121
tir kutools outlook kutools plus onglet 1180x121
 
Commentaires (10)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Brillant!!!
Ce commentaire a été minimisé par le modérateur sur le site
J'obtiens l'erreur suivante lorsque j'exécute l'erreur ci-dessus " Erreur d'exécution '-2147352567 (80020009)' Impossible de supprimer ce dossier. Cliquez avec le bouton droit sur le dossier, puis cliquez sur Propriétés pour vérifier vos autorisations pour le dossier. Voir le propriétaire du dossier ou votre administrateur pour modifier vos permissions"

Il semble que le script déplace 1 élément vers le dossier supprimé, puis génère des erreurs.
Ce commentaire a été minimisé par le modérateur sur le site
D'accord - j'obtiens la même erreur.
Ce commentaire a été minimisé par le modérateur sur le site
Le script essaie de supprimer un dossier qui a déjà été supprimé.
J'ai ajouté une ligne après xFlag = False avec ce contenu :
en cas d'erreur reprendre suivant
Ce commentaire a été minimisé par le modérateur sur le site
En effet, ajoutez :

On Error Resume Next

APRÈS:

Dim x Fldr As Folder 'Déclarer les objets du sous-dossier
xFlag = Faux

Ça devrait ressembler à ça:

Dim x Fldr As Folder 'Déclarer les objets du sous-dossier
xFlag = Faux
On Error Resume Next
Ce commentaire a été minimisé par le modérateur sur le site
Je reçois la même erreur que Bryan .... et maintenant?
Ce commentaire a été minimisé par le modérateur sur le site
Le script essaie de supprimer un dossier qui a déjà été supprimé.
J'ai ajouté une ligne après xFlag = False avec ce contenu :
en cas d'erreur reprendre suivant
Ce commentaire a été minimisé par le modérateur sur le site
Super facile et incroyablement utile. Merci!!
Ce commentaire a été minimisé par le modérateur sur le site
74 dossiers vides ont été supprimés mais malheureusement aussi 109 dossiers qui ne l'étaient pas. D'autres dossiers vides n'ont pas été touchés.
Ce commentaire a été minimisé par le modérateur sur le site
Cela a très bien fonctionné pour moi. Merci. Certains dossiers ne peuvent pas être supprimés car ils sont natifs d'Outlook, mais les sous-dossiers fonctionnent très bien.
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés