Comment exporter des emails depuis plusieurs dossiers/sous-dossiers vers Excel dans Outlook ?
Exporter des emails depuis plusieurs dossiers ou sous-dossiers vers Excel peut être une tâche fastidieuse si vous vous appuyez sur des méthodes manuelles ou des fonctionnalités limitées d'Outlook. Heureusement, il existe des moyens plus efficaces pour y parvenir. Dans cet article, nous explorerons deux méthodes : une approche basée sur VBA et une solution rapide et conviviale avec Kutools pour Outlook. Bien que la méthode VBA offre de la flexibilité, elle implique une configuration complexe et des ajustements. En revanche, Kutools pour Outlook fournit une manière simple et puissante d’exporter des emails vers Excel en quelques clics, vous faisant gagner du temps et des efforts. Plongeons dans les détails.
Exporter des emails depuis plusieurs dossiers/sous-dossiers vers Excel à l'aide de VBA (Complexe mais flexible)
Exporter des emails d'un dossier/sous-dossier vers Excel à l'aide de Kutools pour Outlook 👍 (Efficace et convivial)
Exporter des emails depuis plusieurs dossiers/sous-dossiers vers Excel à l'aide de VBA
Si vous êtes à l’aise avec le codage et avez besoin d’une solution personnalisable, utiliser VBA peut s’avérer efficace. Cette méthode vous permet de spécifier plusieurs dossiers ou sous-dossiers et d’exporter leurs emails vers des fichiers Excel distincts. Cependant, cela nécessite des connaissances techniques et une personnalisation minutieuse du code.
Étape 1 : Ouvrir l'éditeur VBA
Appuyez sur Alt + F11 pour lancer la fenêtre "Microsoft Visual Basic for Applications".
Étape 2 : Insérer un nouveau module
Cliquez sur "Insérer" > "Module", puis collez le code VBA ci-dessous dans la nouvelle fenêtre Module.
VBA : Exporter des emails depuis plusieurs dossiers et sous-dossiers vers Excel
Const MACRO_NAME = "Export Outlook Folders to Excel"
Sub ExportMain()
ExportToExcel "destination_folder_path\A.xlsx", "your_email_account\folder\subfolder_1"
ExportToExcel "destination_folder_path\B.xlsx", "your_email_account\folder\subfolder_2"
MsgBox "Process complete.", vbInformation + vbOKOnly, MACRO_NAME
End Sub
Sub ExportToExcel(strFilename As String, strFolderPath As String)
Dim olkMsg As Object
Dim olkFld As Object
Dim excApp As Object
Dim excWkb As Object
Dim excWks As Object
Dim intRow As Integer
Dim intVersion As Integer
If strFilename <> "" Then
If strFolderPath <> "" Then
Set olkFld = OpenOutlookFolder(strFolderPath)
If TypeName(olkFld) <> "Nothing" Then
intVersion = GetOutlookVersion()
Set excApp = CreateObject("Excel.Application")
Set excWkb = excApp.Workbooks.Add()
Set excWks = excWkb.ActiveSheet
With excWks
.Cells(1, 1) = "Subject"
.Cells(1, 2) = "Received"
.Cells(1, 3) = "Sender"
End With
intRow = 2
For Each olkMsg In olkFld.Items
If olkMsg.Class = olMail Then
excWks.Cells(intRow, 1) = olkMsg.Subject
excWks.Cells(intRow, 2) = olkMsg.ReceivedTime
excWks.Cells(intRow, 3) = GetSMTPAddress(olkMsg, intVersion)
intRow = intRow + 1
End If
Next
Set olkMsg = Nothing
excWkb.SaveAs strFilename
excWkb.Close
Else
MsgBox "The folder '" & strFolderPath & "' does not exist in Outlook.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The folder path was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If
Else
MsgBox "The filename was empty.", vbCritical + vbOKOnly, MACRO_NAME
End If
Set olkMsg = Nothing
Set olkFld = Nothing
Set excWks = Nothing
Set excWkb = Nothing
Set excApp = Nothing
End Sub
Public Function OpenOutlookFolder(strFolderPath As String) As Outlook.MAPIFolder
Dim arrFolders As Variant
Dim varFolder As Variant
Dim bolBeyondRoot As Boolean
On Error Resume Next
If strFolderPath = "" Then
Set OpenOutlookFolder = Nothing
Else
Do While Left(strFolderPath, 1) = "\"
strFolderPath = Right(strFolderPath, Len(strFolderPath) - 1)
Loop
arrFolders = Split(strFolderPath, "\")
For Each varFolder In arrFolders
Select Case bolBeyondRoot
Case False
Set OpenOutlookFolder = Outlook.Session.Folders(varFolder)
bolBeyondRoot = True
Case True
Set OpenOutlookFolder = OpenOutlookFolder.Folders(varFolder)
End Select
If Err.Number <> 0 Then
Set OpenOutlookFolder = Nothing
Exit For
End If
Next
End If
On Error GoTo 0
End Function
Function GetSMTPAddress(Item As Outlook.MailItem, intOutlookVersion As Integer) As String
Dim olkSnd As Outlook.AddressEntry
Dim olkEnt As Object
On Error Resume Next
Select Case intOutlookVersion
Case Is < 14
If Item.SenderEmailType = "EX" Then
GetSMTPAddress = SMTPEX(Item)
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
Case Else
Set olkSnd = Item.Sender
If olkSnd.AddressEntryUserType = olExchangeUserAddressEntry Then
Set olkEnt = olkSnd.GetExchangeUser
GetSMTPAddress = olkEnt.PrimarySmtpAddress
Else
GetSMTPAddress = Item.SenderEmailAddress
End If
End Select
On Error GoTo 0
Set olkSnd = Nothing
Set olkEnt = Nothing
End Function
Function GetOutlookVersion() As Integer
Dim arrVer As Variant
arrVer = Split(Outlook.Version, ".")
GetOutlookVersion = arrVer(0)
End Function
Function SMTPEX(olkMsg As Outlook.MailItem) As String
Dim olkPA As Outlook.propertyAccessor
On Error Resume Next
Set olkPA = olkMsg.propertyAccessor
SMTPEX = olkPA.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x5D01001E")
On Error GoTo 0
Set olkPA = Nothing
End Function
Étape 3 : Personnaliser le code VBA
- Remplacez "destination_folder_path" dans le code ci-dessus par le chemin réel du dossier, tel que "C:\Users\DT168\Documents\TEST".
- Remplacez "votre_compte_email\dossier\sous_dossier_1" et "votre_compte_email\dossier\sous_dossier_2" par vos chemins de dossiers Outlook, comme "Kelly@extendoffice.com\Boîte de réception\A" et "Kelly@extendoffice.com\Boîte de réception\B".
Étape 4 : Exécuter le code
Appuyez sur "F5" ou cliquez sur le bouton "Exécuter" pour exécuter le code. Ensuite, cliquez sur le bouton "OK" dans la boîte de dialogue "Exporter les dossiers Outlook vers Excel" qui apparaît. Maintenant, tous les emails des dossiers/sous-dossiers spécifiés sont exportés dans des classeurs Excel.
Inconvénients :
- Configuration complexe : Nécessite des ajustements minutieux du code et une connaissance pratique de VBA.
- Propice aux erreurs : De petites erreurs dans la personnalisation peuvent entraîner des erreurs ou des exports incomplets.
- Chronophage : Ne convient pas aux exports rapides ou fréquents.
Transformez votre gestion des emails avec le traitement en masse !
Fatigué des tâches répétitives liées aux emails ? Kutools pour Outlook propose des outils de "Traitement en masse" pour rationaliser votre flux de travail et économiser un temps précieux.
- 🌟 Répondre à plusieurs emails : Envoyez des réponses en masse à l’aide de modèles sans effort.
- 📧 Transfert individuel : Transférez plusieurs emails en tant que messages normaux, non comme pièces jointes.
- 📝 Sauvegardez sous différents formats : Exportez des emails au format PDF, Word, Excel, et plus encore — tout en une seule fois !

Exporter des emails d’un dossier/sous-dossier vers Excel à l’aide de Kutools pour Outlook 👍
Pour une approche plus rapide et sans tracas, "Kutools pour Outlook" propose une fonctionnalité "Enregistrer les emails sélectionnés sous forme de fichiers dans divers formats". Cette méthode est fortement recommandée pour sa simplicité, sa rapidité et sa polyvalence. Que vous gériez un petit lot d’emails ou de grands ensembles de données, Kutools garantit une expérience fluide avec un minimum d’effort.
Dites adieu à l'inefficacité d'Outlook ! Kutools pour Outlook facilite le traitement par lots des e-mails - désormais avec des fonctionnalités gratuites alimentées par l'IA ! Téléchargez Kutools pour Outlook dès maintenant !!
Étape 1 : Sélectionnez le dossier ou sous-dossier
Accédez au dossier ou sous-dossier contenant les emails que vous souhaitez exporter. Appuyez sur Ctrl + A pour sélectionner tous les emails dans la liste.
Étape 2 : Accéder à la fonctionnalité "Enregistrer les emails sélectionnés sous forme de fichiers dans divers formats"
Cliquez sur "Kutools" > "Traitement en masse" > "Enregistrer les emails sélectionnés sous forme de fichiers dans divers formats".
Étape 3 : Configurer les paramètres d'exportation
- Dans la boîte de dialogue "Enregistrer les messages sous d'autres fichiers", choisissez le dossier de destination où vous souhaitez enregistrer les fichiers.
- Sélectionnez l'option "Format Excel".
- Choisissez les contenus spécifiques des emails à exporter (par exemple, l'en-tête, le corps) dans la section "Contenu à enregistrer".
Étape 4 : Finaliser l'exportation
Cliquez sur "OK" pour démarrer le processus d'exportation. Une fois terminé, vous trouverez tous les emails enregistrés en tant que fichiers Excel séparés dans le dossier désigné.
Avantages :
- Rapide et intuitif : Exportez des emails vers Excel en quelques clics – aucune compétence technique requise.
- Sortie personnalisable : Choisissez des formats de fichier spécifiques et des contenus pour répondre à vos besoins.
- Processus sans erreur : Évitez les complexités et les erreurs potentielles associées aux méthodes VBA.
- Résultats professionnels : Parfait pour créer des dossiers organisés ou partager des données efficacement.
Meilleurs outils de productivité pour Office
Dernière nouvelle : Kutools pour Outlook lance sa version gratuite !
Découvrez le tout nouveau Kutools pour Outlook avec plus de100 fonctionnalités incroyables ! Cliquez pour télécharger dès maintenant !
📧 Automatisation des E-mails : Réponse automatique (disponible pour POP et IMAP) / Programmer l’envoi d’un e-mail / CC/BCC automatique par règle lors de l’envoi / Transfert automatique (règle avancée) / Ajouter automatiquement une salutation / Diviser automatiquement les e-mails multi-destinataires en messages individuels ...
📨 Gestion des E-mails : Rappeler lemail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les doublons / Recherche Avancée / Organiser les dossiers ...
📁 Pièces jointes Pro : Enregistrement en lot / Détachement en lot / Compression en lot / Enregistrer automatiquement / Détachement automatique / Compression automatique ...
🌟 Interface magique : 😊Plus d’emojis élégants et amusants / Vous rappelle lorsque des e-mails importants arrivent / Réduire Outlook au lieu de fermer ...
👍 Fonctions en un clic : Répondre à tous avec pièces jointes / E-mails anti-phishing / 🕘Afficher le fuseau horaire de l’expéditeur ...
👩🏼🤝👩🏻 Contacts & Calendrier : Ajouter en lot des contacts à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire ...
Utilisez Kutools dans votre langue préférée – prend en charge l’Anglais, l’Espagnol, l’Allemand, le Français, le Chinois et plus de40 autres !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Recommandé vivement : Kutools pour Office (5-en-1)
Un clic pour télécharger cinq installateurs en une seule fois — Kutools pour Excel, Outlook, Word, PowerPoint et Office Tab Pro. Cliquez pour télécharger dès maintenant !
- ✅ Praticité en un clic : téléchargez les cinq packages d’installation en une seule action.
- 🚀 Prêt pour toutes les tâches Office : installez les compléments dont vous avez besoin, quand vous en avez besoin.
- 🧰 Inclus : Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools pour PowerPoint