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

Outlookでフォルダーの一覧を取得するにはどうすればよいですか?

Author: Siluvia Last Modified: 2025-05-23

ナビゲーションペイン内のすべてのメールフォルダー(作成された個人用フォルダーを含む)のツリー構造は、Outlookユーザーが作業中に役立つ場合があります。ツリー構造全体をすばやくリスト化するには、VBAコードを使用できます。このチュートリアルでは、VBAコードを使用して簡単にフォルダーの一覧を取得する方法を学べます。

VBAコードを使用してOutlookでフォルダーの一覧を取得する


VBAコードを使用してOutlookでフォルダーの一覧を取得する

VBAコードを使用してOutlookでフォルダーの一覧を取得するには、次の手順に従ってください。

1. キーボードで「Alt」+「F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開きます。

2. 次に、「Project1」>「Microsoft Outlook Object」>「ThisOutlookSession」をダブルクリックして、「Project1 – ThisOutlookSession」ウィンドウを開きます。スクリーンショットをご覧ください:

the Project1 – ThisOutlookSession window

3. 以下のVBAコードをコピーして、Project1 – ThisOutlookSessionウィンドウに貼り付けます。

VBA: Outlookでフォルダーの一覧を取得する

Option Explicit
Sub GetFoldersList()
    On Error GoTo On_Error
    
    Dim Report As String
    Dim Folder As Outlook.Folder
       
    For Each Folder In Application.Session.Folders
        Report = Report & "---------------------------------------------------------------------------" & vbCrLf
        Call RecurseFolders(Folder, "", Report)
    Next
    Call CreateReportEmail("Outlook Folders List", Report)
    
Exiting:
    Exit Sub
On_Error:
    MsgBox "error=" & Err.Number & " " & Err.Description
End Sub
Sub RecurseFolders(CurrentFolder As Outlook.Folder, TabChars, ByRef Report As String)
    Dim SubFolder As Outlook.Folder
    Dim FolderName, StoreName As String
    
    FolderName = CurrentFolder.Name
    StoreName = CurrentFolder.Store.DisplayName
    
    Report = Report & TabChars & FolderName & " (Store: " & StoreName & ")" & vbCrLf
    
    For Each SubFolder In CurrentFolder.Folders
        Call RecurseFolders(SubFolder, TabChars & vbTab, Report)
    Next SubFolder
End Sub
Sub CreateReportEmail(Title As String, Report As String)
    Dim aMail As MailItem
    
    Set aMail = Application.CreateItem(olMailItem)
        
    aMail.Subject = Title
    aMail.Body = Report
    
    aMail.Display
End Sub

4. キーボードの「F5」キーを押して、VBAコードの実行を開始します。

5. 「マクロ」ダイアログボックスが表示されますので、「実行」ボタンをクリックしてください。

a Macro dialog box

6. マクロが実行されるのを待ちます。その後、すべてのメールフォルダーのリストが新しく作成されたメッセージウィンドウにすぐに表示されます。それを簡単に印刷することもできます。スクリーンショットをご覧ください:

the list of all your email folders is listed out in a created new message window

注意: このVBAコードは、Outlook 2007、2010、および2013に適用できます。


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

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

新しい Kutools for Outlook の無料版を体験してください。70以上の素晴らしい機能が永遠に使えます!今すぐダウンロードをクリック!

🤖 Kutools AI : 高度なAI技術を使用して、メールの返信、要約、最適化、拡張、翻訳、作成を簡単に行います。

📧 メール自動化: 自動返信 (POPとIMAPで利用可能) / メール送信のスケジュール / メール送信時にルールによる自動 CC/BCC / 自動転送 (高度なルール) / 自動挨拶追加 / 複数の宛先を持つメールを個別のメールに自動的に分割...

📨 メール管理: メールの取り消し / 件名やその他によるスパムメールのブロック / 重複したメールの削除 / 高度な検索 / フォルダーを整理...

📁 添付ファイルプロ: バッチ保存 / バッチ切り離し / バッチ圧縮 / 自動保存 / 自動的に切り離す / 自動圧縮...

🌟 インターフェースマジック: 😊より美しくクールな絵文字 /重要なメールが来たときに通知 / クローズ中ではなくOutlookを最小化...

👍 ワンクリックの驚き: 全員に【Attachment】付きで返信 / フィッシング対策メール / 🕘送信者のタイムゾーンを表示...

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

Kutools for Outlook をワンクリックで即座にアンロック。待たずに今すぐダウンロードして効率を高めましょう!

kutools for outlook features1 kutools for outlook features2