Comment exporter des e-mails situés dans plusieurs dossiers et sous-dossiers vers Excel depuis Outlook ?
Exporter des e-mails depuis plusieurs dossiers ou sous-dossiers vers Excel peut vite devenir fastidieux avec les méthodes manuelles ou les fonctionnalités limitées d’Outlook. Heureusement, des solutions bien plus efficaces existent. Dans cet article, nous explorons deux approches : une méthode basée sur VBA et une alternative plus rapide et intuitive grâce à Kutools pour Outlook. Si la solution VBA offre une grande flexibilité, elle exige une configuration complexe et des ajustements précis. À l’inverse, Kutools pour Outlook vous permet d’exporter vos e-mails vers Excel en quelques clics seulement, vous faisant gagner un temps précieux et évitant toute manipulation fastidieuse. Plongeons sans plus attendre dans les détails.
Exporter des e-mails depuis plusieurs dossiers/sous-dossiers vers Excel à l’aide de VBA(Complexe mais flexible)
Exporter des e-mails depuis un dossier/sous-dossier vers Excel à l’aide de Kutools pour Outlook 👍(Efficace et convivial)
Exporter des e-mails depuis plusieurs dossiers/sous-dossiers vers Excel à l’aide de VBA
Si vous maîtrisez la programmation et recherchez une solution hautement personnalisable, VBA s’avère particulièrement efficace. Cette approche vous permet de cibler plusieurs dossiers ou sous-dossiers et d’exporter leurs e-mails vers des fichiers Excel distincts. Elle nécessite toutefois des compétences techniques solides ainsi qu’une personnalisation minutieuse du code.
Étape 1 : Ouvrir l’éditeur VBA
Appuyez sur Alt + F11 pour ouvrir la fenêtre « Microsoft Visual Basic pour Applications ».
Étape 2 : Insérer un nouveau module
Cliquez sur « Insertion » > « Module », puis collez le code VBA ci-dessous dans la nouvelle fenêtre qui s’ouvre.
VBA : Exporter des e-mails 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 du dossier réel, par exemple «C:\Users\DT168\Documents\TEST».
- Remplacez «your_email_account\folder\subfolder_1» et «your_email_account\folder\subfolder_2» par vos chemins de dossiers Outlook, par exemple «Kelly@extendoffice.com\Inbox\A» et «Kelly@extendoffice.com\Inbox\B».

Étape 4 : Exécuter le code
Appuyez sur « F5 » ou cliquez sur le bouton « Exécuter » pour lancer le code. Une fois la boîte de dialogue « Exporter des dossiers Outlook vers Excel » affichée, cliquez sur « OK ». Les e-mails de tous les dossiers et sous-dossiers spécifiés sont alors exportés vers un classeur Excel.
Inconvénients :
- Configuration complexe : nécessite des ajustements minutieux du code et une solide maîtrise de VBA.
- Sujet aux erreurs : Une petite erreur lors de la personnalisation peut entraîner des dysfonctionnements ou des exports incomplets.
- Chronophage : Ne convient pas aux exports rapides ou fréquents.
Transformez votre gestion des e-mails avec le Traitement en Masse !
Fatigué(e) des tâches répétitives liées aux e-mails ? Kutools pour Outlook propose des outils « Traitement en masse » pour rationaliser votre flux de travail et vous faire gagner un temps précieux.
- 🌟Répondre à plusieurs e-mails : Envoyez des réponses groupées sans effort grâce à des modèles prêts à l’emploi.
- 📧Transférer individuellement : Transférez plusieurs e-mails en tant que messages classiques, et non en pièces jointes.
- 📝Enregistrez sous différents formats : Exportez vos e-mails en PDF, Word, Excel et bien plus encore — le tout en une seule opération !

Exporter des e-mails depuis un dossier/sous-dossier vers Excel à l’aide de Kutools pour Outlook 👍
Pour une approche plus rapide et sans tracas, « Kutools pour Outlook » propose la fonctionnalité « Enregistrer les e-mails sélectionnés sous différents formats ». Fortement recommandée pour sa simplicité, sa rapidité et sa polyvalence, elle vous assure une expérience fluide avec un minimum d’efforts, que vous gériez quelques e-mails ou de grands volumes de données.
Dites adieu à l’inefficacité d’Outlook ! Kutools pour Outlook simplifie le traitement par lots de vos e-mails – profitez dès maintenant d’un essai gratuit de 30 jours !Téléchargez Kutools pour Outlook dès maintenant !!
Étape 1 : Sélectionner le dossier ou sous-dossier
Accédez au dossier ou sous-dossier contenant les e-mails à exporter. Appuyez sur Ctrl + A pour sélectionner tous les e-mails de la liste.
Étape 2 : Accéder à la fonctionnalité « Enregistrer les e-mails sélectionnés sous différents formats »
Cliquez sur « Kutools » > « Traitement en masse » > « Enregistrer les e-mails sélectionnés sous différents formats ».

Étape 3 : Configurer les paramètres d’export
- Dans la boîte de dialogue « Enregistrer l’e-mail sous d’autres fichiers », sélectionnez le dossier de destination dans lequel vous souhaitez enregistrer les fichiers.
- Sélectionnez l’option « Format Excel ».
- Sélectionnez les éléments spécifiques de l’e-mail à exporter (par exemple, en-tête, corps du message) dans la section « Contenu à enregistrer ».

Étape 4 : Finaliser l’export
Cliquez sur « OK » pour lancer l’export. Une fois le processus terminé, tous vos e-mails seront enregistrés sous forme de fichiers Excel distincts dans le dossier indiqué.

Avantages :
- Rapide et intuitif : exportez vos e-mails vers Excel en quelques clics seulement — aucune compétence technique requise.
- Sortie personnalisable : Sélectionnez le type de fichier et les contenus spécifiques qui répondent à vos besoins.
- Un processus sans erreur : évitez les complexités et les erreurs potentielles liées aux méthodes VBA.
- Résultats professionnels : idéal pour créer des archives bien organisées ou partager efficacement vos données.
Meilleurs outils de productivité Office
Découvrez la toute nouvelle Kutools pour Outlook avec 100+ fonctionnalités incroyables !Cliquez pour télécharger dès maintenant !
📧Automatisation des e-mails : Réponse automatique (disponible pour POP et IMAP) / Planification de l’envoi d’e-mails / CC/BCC automatique selon des règles lors de l’envoi d’e-mails / Transfert automatique (règle avancée) / Ajout automatique de formules de politesse / Division automatique des e-mails à plusieurs destinataires en messages individuels...
📨Gestion des e-mails : Rappeler un e-mail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les e-mails en double / Recherche avancée / Organiser vos dossiers…
📁Pièces jointes Pro : Enregistrer en lot / Détacher en lot / Compresser en lot / Enregistrement automatique / Détachement automatique / Compression automatique…
🌟Magie de l’interface : 😊 Encore plus d’emojis jolis et stylés / Vous prévient à l’arrivée d’e-mails importants / Réduire Outlook au lieu de le fermer...
👍Merveilles en un clic : Répondre à tous avec pièces jointes / E-mails anti-hameçonnage / 🕘 Afficher le fuseau horaire – Heure actuelle de l’expéditeur…
👩🏼🤝👩🏻Contacts et calendrier : Créer en lot : ajouter un contact à 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 – compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de 40 autres langues !


🚀 Téléchargement en un clic — Obtenez tous les compléments Office
Fortement recommandé : Kutools for Office (5-en-1)
Un seul clic pour télécharger cinq programmes d’installationen une fois —Kutools pour Excel, Outlook, Word, PowerPointet Office Tab Pro.Cliquez pour télécharger dès maintenant !
- ✅Commodité en un clic : téléchargez les cinq packs d’installation en une seule action.
- 🚀Prêt à relever toutes vos tâches Office : installez les compléments dont vous avez besoin, exactement quand vous en avez besoin.
- 🧰Inclus: Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools for PowerPoint

