Outlook でメールを開かずに添付ファイルを保存するには?
受信メールから添付ファイルをコンピューターのディスクに頻繁に保存しなければならないこともあるでしょう。1 通のメールから特定の添付ファイル、あるいはすべての添付ファイルを保存するのは簡単ですが、複数のメールにある添付ファイルを一度にまとめて保存するにはどうすればよいでしょうか?通常は、メールを一つひとつ開いて添付ファイルを手動で保存する必要がありますが、この繰り返し作業を回避するテクニックはあるのでしょうか?このチュートリアルでご紹介する方法が、きっとお役に立ちます。
VBA コードを使用して、1 通または複数のメールからメールを開かずに添付ファイルを保存する
便利なツールを使用して、1 通または複数のメールからメールを開かずに添付ファイルを保存する
VBA コードを使用して、1 通または複数のメールからメールを開かずに添付ファイルを保存する
次の VBA コードを使えば、Outlook でメールを開くことなく、1 通または複数のメールから添付ファイルを一括で保存できます。以下の手順に従って操作してください。
1.添付ファイルを保存したいメールを1 通または複数選択し、Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
2.Microsoft Outlook オブジェクトフォルダーを展開し、ThisOutlookSessionをダブルクリックしてコードウィンドウを開き、以下の VBA コードを貼り付けてください。

VBA コード:メールを開かずに添付ファイルを保存する
Public Sub SaveAttachmentsWithoutOpening()
'Updated by Extendoffice 20191008
Dim xMailItem As Outlook.MailItem
Dim xAttachments As Outlook.Attachments
Dim xAttachment As Outlook.Attachment
Dim i As Long
Dim xCount As Long
Dim xFileName As String
Dim xSavePath As String
Dim xOriginalFiles As String
On Error Resume Next
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.BrowseForFolder(0, "Select a folder:", 0, strStartingFolder)
If Not TypeName(xFolder) = "Nothing" Then
Set xFolderItem = xFolder.self
xSavePath = xFolderItem.Path & "\"
Else
xFileName = ""
Exit Sub
End If
For Each xMailItem In Outlook.ActiveExplorer.Selection
Set xAttachments = xMailItem.Attachments
xCount = xAttachments.Count
xOriginalFiles = ""
If xCount > 0 Then
For i = xCount To 1 Step -1
Set xAttachment = xAttachments.Item(i)
If IsEmbeddedAttachment(xAttachment) = False Then
xFileName = xSavePath & xAttachment.FileName
xAttachment.SaveAsFile xFileName
xAttachment.Delete
If xMailItem.BodyFormat <> olFormatHTML Then
xOriginalFiles = xOriginalFiles & vbCrLf & "file://" & xFileName
Else
xOriginalFiles = xOriginalFiles & "<br>" & "<a href='file://" & xFileName & "'>" & xFileName & "</a>"
End If
End If
Next i
If xMailItem.BodyFormat <> olFormatHTML Then
xMailItem.Body = "The file(s) were saved to " & xOriginalFiles & vbCrLf & vbCrLf & xMailItem.Body
Else
xMailItem.HTMLBody = "<p>" & "The file(s) were saved to " & xOriginalFiles & "</p>" & xMailItem.HTMLBody
End If
xMailItem.Save
End If
Next
Set xAttachments = Nothing
Set xMailItem = Nothing
End Sub
Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
xHtml = xItem.HTMLBody
xID = "cid:" & xCid
If InStr(xHtml, xID) > 0 Then
IsEmbeddedAttachment = True
End If
End If
End Function 4.F5キーを押してコードを実行すると、BrowseForFolderウィンドウが表示されます。添付ファイルを保存するフォルダーを選択し、OKボタンをクリックしてください。
これにより、選択したメールに含まれるすべての添付ファイルが、即座に指定したフォルダーに保存されます。
注:すべての添付ファイルはメールから分離され、その代わりにメール本文には保存先パスへのリンクが残ります。

便利なツールを使用して、1 通または複数のメールからメールを開かずに添付ファイルを保存する
VBA 初心者には、このセクションの方法が最適です。
ここでは、すべての添付ファイルを保存するのに、Kutools for Outlookのユーティリティをおすすめします。選択したメールから添付ファイルを分離せずにそのまま保存したい場合は、「すべての添付ファイルを保存」機能が簡単に実現できます。以下の手順に従ってください。
ダウンロードしてインストールしてください。最初に、Kutools for Outlook を適用する前に。
Outlook の非効率さにサヨナラしましょう!Kutools for Outlook なら、メールの一括処理がもっと簡単になります。今なら30 日間の無料トライアル付き!Kutools for Outlook を今すぐダウンロード!
1.添付ファイルを保存したいメールを選択し、KUTOOLS PLUS>添付ファイルツール>すべて保存をクリックします。
2.保存設定ダイアログボックスで、次の操作を行ってください。
- 2.1)添付ファイルをこのフォルダに保存するセクションで、添付ファイルの保存先フォルダーを選択してください。
- 2.2)次のスタイルで添付ファイルを保存するボックスでは、添付ファイルを保存するサブフォルダーを特定のスタイルで作成したり、保存される添付ファイルに特定のスタイルで名前を付けたりするために、任意で使用できます。
- 2.3) OKをクリックすると、選択したメールに含まれるすべての添付ファイルの保存が開始されます。
ヒント:上記の設定により、すべての添付ファイルが指定されたフォルダーに保存されます。たとえば、「invoice」という特定の単語をファイル名に含む PDF ファイルなど、特定の添付ファイルのみを保存したい場合は、フィルター条件を次のように設定できます。
- 詳細オプションボタンをクリックすると、フィルター条件が展開されます。
- ニーズに基づいて条件を指定します。
ヒント:ここでは、【附件】名の「を含む」チェックボックスにチェックを入れ、テキストボックスに「invoice」と入力します。次に、添付ファイルの種類が次のものと一致するチェックボックスにチェックを入れ、テキストボックスに「。pdf」と入力します。

3.次のダイアログボックスが表示されたら、はいをクリックして続行します。
これにより、選択したメールの添付ファイルが指定されたフォルダーに一括保存されます。
ヒント:選択したメールから添付ファイルを分離し、メール本文に添付ファイルへのハイパーリンクだけを残したい場合は、すべての添付ファイルを分離機能が便利です。
関連記事
Outlook の添付ファイルを特定のフォルダーに自動的にダウンロード/保存する
通常、Outlook で「添付ファイル」>「すべての添付ファイルを保存」をクリックすれば、1 通のメールに含まれるすべての添付ファイルを一括保存できます。しかし、受信するすべてのメールから添付ファイルを自動的に保存したい場合はどうすればよいでしょうか?この記事では、Outlook の添付ファイルを指定したフォルダーに自動でダウンロード・保存する2 つの方法をご紹介します。
Outlook で返信時に添付ファイルを保持する
Microsoft Outlook でメールを転送する際、元のメッセージに含まれる添付ファイルはそのまま転送メールに含まれます。しかし、返信する場合は、元の添付ファイルが自動的に新しい返信メッセージに含まれることはありません。ここでは、Microsoft Outlook で返信時にも元の添付ファイルを確実に保持するための便利なテクニックをいくつかご紹介します。
Outlook で添付ファイル内(コンテンツ)から単語を検索する
Outlook のインスタント検索ボックスにキーワードを入力すると、メールの件名や本文、添付ファイルなどからそのキーワードが検索されます。しかし、今必要なのは添付ファイルのコンテンツ内だけを対象にキーワードを検索することです。この記事では、Outlook で添付ファイル内の単語を簡単に検索するための詳細な手順をご紹介します。
- ✅ワンクリックで簡単操作:5 つのセットアップパッケージをたった1 回のクリックで一括ダウンロードできます。
- 🚀どんな Office 作業にも対応可能:必要なときに、必要なアドインをすぐインストールできます。
- 🧰含まれるもの:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint
最高の Office 生産性ツール
まったく新しいKutools for Outlook を、100 以上の驚きの機能とともに体験しましょう!今すぐダウンロード!
🤖KUTOOLS AI:高度な AI 技術を活用して、メールの返信、要約、最適化、拡張、翻訳、作成など、あらゆる操作をラクラクこなします。
📧メール自動化:自動返信(POP および IMAP 対応)/メールのスケジュール送信/メール送信時にルールに基づいて自動 CC/BCC/自動転送(高度なルール)/自動で挨拶文を追加/複数の宛先を持つメールを個別のメッセージに自動分割...
📨メール管理:メールの取り消し/件名などを基準に詐欺メールをブロック/重複したメールを削除/高度な検索/フォルダーを整理...
📁添付ファイルプロ:一括保存/一括分離/一括圧縮/自動保存/自動的に切り離す/自動圧縮...
🌟インターフェースの魅力:😊さらに美しくクールな絵文字を多数収録/重要なメールが届いた際に通知/Outlook を閉じる代わりに最小化...
👍ワンクリックの驚き:全員に【Attachment】付きで返信/フィッシングメール対策/🕘送信者の現在時刻ゾーンを表示...
👩🏼🤝👩🏻連絡先とカレンダー:選択したメールから連絡先を追加を一括登録/連絡先グループを個別のグループに分割/誕生日のリマインダーを削除...
Kutools はお好みの言語でお使いいただけます!英語、スペイン語、ドイツ語、フランス語、中国語をはじめ、40 以上の言語をサポートしています!
ワンクリックでKutools for Outlook の機能を即解放!今すぐダウンロードして、効率を飛躍的にアップさせましょう!


🚀 ワンクリックダウンロード — Office アドインをすべて入手
強く推奨:Kutools for Office(5-in-1)
ワンクリックで5 つのインストーラーを 一括ダウンロード! ―Kutools for Excel、Outlook、Word、PowerPointおよびOffice Tab Pro。今すぐダウンロード!