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

Outlookで選択したメールの添付ファイル情報の一覧を取得するにはどうすればよいですか?

Author: Siluvia Last Modified: 2025-08-06

添付ファイル付きで受信したメールの場合、表示名やファイル名など、添付ファイルに関する詳細情報を知りたい場合があります。実際、VBAコードを使用すると、Outlookで現在選択しているメールの添付ファイル情報の一覧を簡単に取得できます。詳細は以下のチュートリアルをご覧ください。

Outlookで選択したメールの添付ファイル情報の一覧を取得する

Office Tab - Microsoft Officeでタブ形式の編集とブラウジングを有効にし、作業を快適に
今すぐKutools for Outlookを解除して、無制限アクセスで100以上の機能をお楽しみください
Outlook 2024 - 2010またはOutlook 365をこれらの高度な機能で強化。100以上の強力な機能を楽しんで、メール体験を向上させましょう!

Outlookで選択したメールの添付ファイル情報の一覧を取得する

1. 添付ファイル情報が必要な、添付ファイル付きのメールを選択します。

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

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

the Project1 – ThisOutlookSession window

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

VBAコード: 添付ファイル情報の一覧を取得

Option Explicit
Public Sub GetAttachmentList()
    Dim selItem As Object
    Dim aMail As MailItem
    Dim aAttach As attachment
    Dim Report As String
    
    For Each selItem In Application.ActiveExplorer.Selection
        If selItem.Class = olMail Then
            Set aMail = selItem
            For Each aAttach In aMail.Attachments
                Report = Report & vbCrLf & "------------------------------------------------------------------------" & vbCrLf
                Report = Report & GetAttachmentInfo(aAttach)
            Next
            Call CreateReportEmail("Attachment Report", Report)
        End If
    Next
End Sub
 
Public Function GetAttachmentInfo(attachment As attachment)
    Dim Report
    GetAttachmentInfo = ""
    Report = Report & "Index: " & attachment.Index & vbCrLf
    Report = Report & "Display Name: " & attachment.DisplayName & vbCrLf
    Report = Report & "File Name: " & attachment.FileName & vbCrLf
    Report = Report & "Block Level: " & attachment.BlockLevel & vbCrLf
    Report = Report & "Path Name: " & attachment.PathName & vbCrLf
    Report = Report & "Position: " & attachment.Position & vbCrLf
    Report = Report & "Size: " & attachment.Size & vbCrLf
    Report = Report & "Type: " & attachment.Type & vbCrLf
    
    GetAttachmentInfo = Report
End Function
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 

5. キーボードで F5 キーを押して、VBAコードを実行します。

6. これで Macros ダイアログボックスがポップアップ表示されますので、Run(実行)ボタンをクリックしてください。

a Macros dialog box

7. Macros ダイアログボックスで Run ボタンをクリックすると、新しいメッセージウィンドウが作成され、選択したメールのすべての添付ファイル情報が本文内にリストされます。スクリーンショットをご覧ください:

a new message window is created with all attachments information of selected email listed inside the email body

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


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

速報: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