メインコンテンツへスキップ

OutlookからExcelにフォルダの構造をエクスポートするにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-08-06

この記事では、Outlookからアカウントのフォルダ構造をExcelファイルにエクスポートする方法を紹介します。この記事の詳細に従って実行してください。

VBAコードを使用してOutlookからExcelにアカウントのフォルダ構造をエクスポートする


VBAコードを使用してOutlookからExcelにアカウントのフォルダ構造をエクスポートする

次のVBAコードが役立つかもしれません。以下の手順で行ってください:

1. Excelを有効にし、ALT + F11キーを押しながらMicrosoft Visual Basic for Applicationsウィンドウを開きます。

2. 「挿入」>「 モジュール」をクリックし、次のコードをモジュールウィンドウに貼り付けます。

VBAコード: Outlookから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. まだMicrosoft Visual Basic for Applicationsウィンドウ内で、「ツール」>「参照設定」をクリックして「参照設定-Project1」ダイアログボックスに移動し、「利用可能な参照」リストボックスから Microsoft Excel Object Libraryオプションをチェックします。スクリーンショットをご覧ください:

doc export folder structure to excel 1

4. 「OK」ボタンをクリックし、F5キーを押してこのコードを実行すると、「フォルダを選択」ダイアログボックスが表示されます。エクスポートしたいメールアカウントのフォルダ構造を選択してください。スクリーンショットをご覧ください:

doc export folder structure to excel 2

5. 次に、「OK」ボタンをクリックすると、「 ファイル保存」ウィンドウが表示されます。エクスポートされたファイルの場所とファイル名を指定してください。スクリーンショットをご覧ください:

doc export folder structure to excel 3

6. 最後に、「保存」ボタンをクリックすると、保存した特定のExcelワークブックに移動して、エクスポートされたフォルダ構造を確認できます。スクリーンショットをご覧ください:

doc export folder structure to excel 4

最高のオフィス生産性ツール

速報:Kutools for Outlook が無料版をリリース!

新しくなった Kutools for Outlook を100以上の素晴らしい機能とともに体験してください!今すぐダウンロード!

🤖 Kutools AI : 高度なAI技術を活用し、メールの返信、要約、最適化、拡張、翻訳、作成を効率良くこなします。

📧 メール自動化: 自動返信(POPとIMAPに対応) / メール送信のスケジュール設定 /送信時にルールで自動 CC/BCC / 高度なルールによる自動転送 / 挨拶文を自動追加 / 複数宛先のメールを自動で個別のメールに分割 ...

📨 メール管理: メールの取り消し / 件名やその他の条件で迷惑メールをブロック / 重複したメールの削除 / 高度な検索 / フォルダーを整理 ...

📁 添付ファイルPro: 一括保存 / 一括切り離し / 一括圧縮 / 自動保存 / 自動的に切り離す / 自動圧縮 ...

🌟 インターフェースマジック: 😊もっとキレイで楽しい絵文字 /重要なメールの到着をお知らせ / Outlookを閉じずに最小化 ...

👍 ワンクリック便利機能: 全員に【Attachment】付きで返信 /迷惑メール対策 / 🕘送信者のタイムゾーン表示 ...

👩🏼‍🤝‍👩🏻 連絡先&カレンダー: 選択したメールから連絡先を一括追加 /連絡先グループを個別のグループに分割 / 誕生日のリマインダーを削除 ...

お好みの言語で Kutools をご利用いただけます ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上をサポート!

Kutools for Outlook はワンクリックですぐにアンロックできます。今すぐダウンロードして効率をアップしましょう!

kutools for outlook features1 kutools for outlook features2