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

How to export folder structure from Outlook to Excel?

This article, I will introduce how to export folder structure of an account from Outlook to Excel file. Please achieve it with the details of this article.

Export folder structure of an account from Outlook to Excel by using VBA code


Export folder structure of an account from Outlook to Excel by using VBA code

The following VBA code may do you a favor, please do with below steps:

1. Enable Excel and hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

VBA code: Export folder structure of an account from Outlook to Excel:

Dim xExcelApp As Excel.Application
Dim xWb As Excel.Workbook
Dim xWs As Excel.Worksheet
Dim xMainFolderCount As Long
Sub OutlookExportFolderStructureToExcel()
    Dim xFolder As Folder
    Dim xExcelFile As String
    Dim xFileDialog As FileDialog
    On Error Resume Next
    Set xFolder = Outlook.Application.Session.PickFolder
    If xFolder Is Nothing Then Exit Sub
    Set xExcelApp = New Excel.Application
    Set xWb = xExcelApp.Workbooks.Add
    Set xWs = xWb.Sheets(1)
    With xWs.Range("A1", "A1")
         .Value = "Folder Structure"
         .Font.Size = 14
         .Font.Bold = True
    End With
    xMainFolderCount = Len(xFolder.FolderPath) - Len(Replace(xFolder.FolderPath, "\", "")) + 1
    Call ExportToExcel(xFolder.FolderPath, xFolder.Name)
    Call ProcessFolders(xFolder.Folders)
    xWs.Columns("A").AutoFit
    Set xFileDialog = xExcelApp.FileDialog(msoFileDialogSaveAs)
    With xFileDialog
        .AllowMultiSelect = False
        .FilterIndex = 1
        If .Show = 0 Then
            xWb.Close False
            xExcelApp.Quit
            Set xExcelApp = Nothing
            Exit Sub
        End If
        xExcelFile = .SelectedItems.Item(1)
    End With
    xWb.Close True, xExcelFile
    MsgBox "Export complete!", vbExclamation, "Kutools for Outlook"
End Sub

Sub ProcessFolders(ByVal xFlds As Folders)
    Dim xSubFolder As Folder
    For Each xSubFolder In xFlds
        If xSubFolder.Name <> "Conversation Action Settings" And xSubFolder.Name <> "Quick Step Settings" Then
           Call ExportToExcel(xSubFolder.FolderPath, xSubFolder.Name)
           Call ProcessFolders(xSubFolder.Folders)
        End If
    Next
End Sub

Sub ExportToExcel(ByRef xFolderPath As String, xFolderName As String)
    Dim i, n As Long
    Dim xPrefix As String
    Dim xLastRow As Integer
    i = Len(xFolderPath) - Len(Replace(xFolderPath, "\", "")) - xMainFolderCount
    For n = 0 To i
        xPrefix = xPrefix & "-"
    Next
    xFolderName = xPrefix & xFolderName
    xLastRow = xWs.UsedRange.Rows.Count + 1
    xWs.Range("A" & xLastRow) = xFolderName
End Sub

3. Still in the Microsoft Visual Basic for Applications window, click Tools > References to go to the References-Project1 dialog box, and check Microsoft Excel Object Library option from the Available References list box, see screenshot:

doc export folder structure to excel 1

4. Then click OK button, and press F5 key to run this code, a Select Folder dialog box is popped out, please select the email account that you want to export its folder structure, see screenshot:

doc export folder structure to excel 2

5. And then, click OK button, a File Save window is displayed, please specify a location and file name for this exported file, see screenshot:

doc export folder structure to excel 3

6. At last, click Save button, and you can go to the specific excel workbook you have saved to view the exported folder structure, see screenshot:

doc export folder structure to excel 4

 


Kutools for Outlook - Brings 100 Advanced Features to Outlook, and Make Work Much Easier!

  • Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by custom; Auto Reply without exchange server, and more automatic features...
  • BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
  • Reply (All) With All Attachments in the mail conversation; Reply Many Emails in seconds; Auto Add Greeting when reply; Add Date into subject...
  • Attachment Tools: Manage All Attachments in All Mails, Auto Detach, Compress All, Rename All, Save All... Quick Report, Count Selected Mails...
  • Powerful Junk Emails by custom; Remove Duplicate Mails and Contacts... Enable you to do smarter, faster and better in Outlook.
shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121
 

 

Comments (13)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This code is great and works great, thank you.
What would maker even extra great would be if it could show the sizes (in bytes, kilobytes, megabytes, petabytes, whatever) and even possibly the item count for each folder.
:)
This comment was minimized by the moderator on the site
Hallo, bei mir führt der Code beim Ausführen zu einem Fehler in Zeile 40 "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert". Und anders als in der Beschreibung wir bei mir in Punkt 4. weder nach dem Ordner noch nach dem Mail-Konto gefragt.
This comment was minimized by the moderator on the site
Hello, Jörg.N
If you get the error prompt message, please check if you missed the step3 in this article.
You should follow the steps in the article step by step, if there is still problem, please comment here.
Thank you!
This comment was minimized by the moderator on the site
Hello, I did it the way as described. Step 3 (MS Excel 16.0 Object Library) was allready active. I disabled and lated enabled it again. When I click F5 there is no question for a folder to store. I get an error message: Error in line 40: "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert".
This comment was minimized by the moderator on the site
Hi, it looks like my answer wasn't send. I tested the script again. Same error message. I do not miss step3. That topic was/is already active. I disabled and later enabled it again. Same result. It always stops at line 40. Any idea?
This comment was minimized by the moderator on the site
Hello, Jörg Normann

The code works well in my Outlook, which Outlook version you used? Or you can upload the error screenshot here.
Thank you!
This comment was minimized by the moderator on the site
I'm using Outlook from MS Office 2019 Pro plus 64bit in German always latest version. How can I send a picture?
This comment was minimized by the moderator on the site
Hello,
May be you should enable all macros setting, please do as this:
In your Outlook, please click File > Options > Trust Center > Trust Center Settings > Macro Settings, and then check Enable all macros and Apply macro security settings to installed add-ins options.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-option-setting.png

After finishing this setting, please restart the Outlook.

Please try, thank you!
This comment was minimized by the moderator on the site
Hallo,
ich habe exakt den gleichen Fehler wie Jörg. Ich habe Office Professional Plus 2021 in Deutsch installiert.
Punkt 3 finde ich unter Extras - Verweise. Auch bei mir war die "MS Excel 16.0 Object Library" bereits aktiviert, zusätzlich auch noch "Visual Basic For Applications", "MS Office 16.0 Object Library" und "OLE Automation".
Beim Ausführen ebenfalls der "Fehler beim Kompilieren", der Hilfe-Button verrät dann noch "Der Administrator Ihrer Organisation hat den für die Verwendung dieser Funktion erforderlichen Dienst deaktiviert."
Aber welcher ist das und wo / wie kann man ihn aktivieren???
This comment was minimized by the moderator on the site
Hello, Erich
May be you should enable all macros setting, please do as this:
In your Outlook, please click File > Options > Trust Center > Trust Center Settings > Macro Settings, and then check Enable all macros and Apply macro security settings to installed add-ins options.

After finishing this setting, please restart the Outlook.

Please try, thank you!
This comment was minimized by the moderator on the site
Hello,
thank you for your fast response. I think, i’ve now set all necessary options. But i can’t find the „Apply macro security settings to installed add-ins“
I would like to send some screenshots, but can't find how to on this page.
Best regards Erich Hackel
This comment was minimized by the moderator on the site
Hello, Erich,
If you can't find the "Apply macro security settings to installed add-ins" option, please view the below screenshot:

https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-option-setting.png
This comment was minimized by the moderator on the site
You additionally need to select "Microsoft Outlook 16.0 Object Library" as a reference.
There are no comments posted here yet
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations

Follow Us

Copyright © 2009 - www.extendoffice.com. | All rights reserved. Powered by ExtendOffice. | Sitemap
Microsoft and the Office logo are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries.
Protected by Sectigo SSL