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 plus 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 délicats. En revanche, Kutools pour Outlook fournit un moyen simple et puissant d'exporter des emails vers Excel en quelques clics seulement, vous faisant gagner du temps et des efforts. Plongeons dans les détails.
Exporter des Emails depuis Plusieurs Dossiers/Sous-Dossiers vers Excel en Utilisant VBA (Complexe mais Flexible)
Exporter des Emails depuis un Dossier/Sous-Dossier vers Excel en Utilisant Kutools pour Outlook 👍 (Efficace et Convivial)
Exporter des Emails depuis Plusieurs Dossiers/Sous-Dossiers vers Excel en Utilisant VBA
Si vous êtes à l'aise avec le codage et avez besoin d'une solution personnalisable, utiliser VBA peut être 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, elle 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, tels que "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, les emails de tous les 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 : Non adapté aux exports rapides ou fréquents.
Transformez votre gestion des emails grâce au 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 vous faire gagner 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 comme des messages normaux, pas comme des pièces jointes.
- 📝 Enregistrer sous Différents Formats : Exportez des emails au format PDF, Word, Excel, et plus encore — tout en une seule fois !

Exporter des Emails depuis un Dossier/Sous-Dossier vers Excel en Utilisant 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 Différents 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.
Découvrez l'efficacité ultime des emails avec Kutools pour Outlook ! Accédez à 70 fonctionnalités puissantes entièrement gratuites, pour toujours. Téléchargez la version gratuite dès maintenant !
Étape 1 : Sélectionner 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 Différents Formats"
Cliquez sur "Kutools" > "Traitement en Masse" > "Enregistrer les Emails Sélectionnés sous Forme de Fichiers dans Différents Formats".
Étape 3 : Configurer les Paramètres d'Exportation
- Dans la boîte de dialogue "Enregistrer les Messages sous 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, en-tête, corps) dans la section "Contenu à Enregistrer".
Étape 4 : Finaliser l'Exportation
Cliquez sur "OK" pour commencer le processus d'exportation. Une fois terminé, vous trouverez tous les emails enregistrés sous forme de fichiers Excel séparés dans le dossier désigné.
Avantages :
- Rapide et Intuitif : Exportez des emails vers Excel en quelques clics seulement — aucune compétence technique requise.
- Sortie Personnalisable : Choisissez des formats de fichiers 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 une 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 emails : Réponse automatique (disponible pour POP et IMAP) / Programmation de l’envoi des emails / CC/BCC automatique selon des règles lors de l’envoi / Transfert automatique (Règle avancée) / Ajout automatique de la salutation / Fractionnement automatique des emails multi-destinataires en messages individuels...
📨 Gestion des emails : Rappeler les emails / Bloquer les emails frauduleux par sujet et autres critères / Supprimer les emails en double / Recherche Avancée / Organiser les dossiers...
📁 Pièces jointes Pro:Enregistrer par lot / Détachement par lot / Compression par lot / Enregistrer automatiquement/ Détachement automatique/Compression automatique...
🌟 Magie de l’interface : 😊Davantage d’emojis beaux et sympas / Recevez une alerte en cas d’email important / Réduisez Outlook au lieu de le fermer...
👍 Fonctions en un clic : Répondre à tous avec pièces jointes / Anti-phishing emails / 🕘Afficher le fuseau horaire de l’expéditeur...
👩🏼🤝👩🏻 Contacts & Calendrier: Ajouter des contacts en lot à partir des emails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire...
Utilisez Kutools dans la langue de votre choix– prend en charge l’anglais, l’espagnol, l’allemand, le français, le chinois, et plus de40 autres langues !

