Power Automateでメール添付ファイルを自動保存する方法|Outlook→OneDrive/SharePoint

はじめに
取引先から届く請求書や見積書の PDF を、毎回手作業で OneDrive や SharePoint に保存している——そんな地味で面倒な作業は、Power Automate で自動化できます。
「特定の差出人から添付ファイル付きメールが届いたら、その添付を指定フォルダーへ自動保存する」フローを作れば、保存のし忘れも場所のバラつきもなくなります。
本記事では、プレミアムライセンスなし・標準コネクタだけで、Outlook の添付ファイルを OneDrive(および SharePoint)へ自動保存するフローを、実際の画面つきで最初から最後まで解説します。添付の中身が空になってしまう定番のハマりどころも、確実に回避します。
- 取引先から届く請求書・見積などの添付を毎回手で保存していて面倒
- 特定の差出人のメールだけを対象に、添付を自動で保存したい
- 保存先を OneDrive にするか SharePoint にするか、両方の設定を見比べたい
- 過去に作ったら添付が空(0 バイト)になってしまった経験がある
Power Automateの基本・料金・他の実例一覧はこちら。

完成イメージ:このフローがやること
今回作るのは「特定の差出人から添付ファイル付きメールが届いたら、その添付を OneDrive(と SharePoint)へ自動保存する」フローです。
メール 1 通に複数の添付があっても、「それぞれに適用する(Apply to each)」で 1 つずつループ保存します。
下の画像は実際のテスト実行結果で、添付 2 件分ループし、OneDrive・SharePoint への保存がどちらも成功(緑チェック)しています。

フロー全体の構成
フローは次の構成です。保存先は OneDrive と SharePoint の両方を解説しますが、実際にはどちらか一方だけで構いません。自分の環境に合うほうを選んでください。
- 新しいメールが届いたとき (V3)(トリガー/Office 365 Outlook)… 差出人・添付で絞り込む
- それぞれに適用する(コントロール)… 添付ファイル配列をループ
- ファイルの作成(OneDrive for Business)… 添付を OneDrive に保存
- ファイルの作成(SharePoint)… 添付を SharePoint に保存(任意・併記)
フローの作成手順
① 自動化したクラウド フローを作成する
Power Automate(make.powerautomate.com)にアクセスし、左メニューの「作成」から「自動化したクラウド フロー」を選びます。

フロー名(例:メール添付ファイル自動保存)を入力し、トリガーの検索で「新しいメールが届いたとき」を探して、Office 365 Outlook の「新しいメールが届いたとき (V3)」を選択し「作成」をクリックします。

② トリガーの基本設定(フォルダー=受信トレイ)
デザイナーが開いたら、トリガーのフォルダーが「受信トレイ」になっていることを確認します(既定で受信トレイです)。

③ ★詳細オプションで「差出人」と「添付」を設定する(最重要)
ここが今回いちばん重要なポイントです。トリガーの「詳細オプションを表示」を開き、次の 3 つを設定します。
- 差出人:対象にしたい差出人のメールアドレス(取引先など)
- 添付ファイルを含める:はい ← これを忘れると添付の中身が取得できません
- 添付ファイル付きのみ:はい ← 添付のないメールではフローを起動しない

④ 「それぞれに適用する」で添付をループする
1 通のメールに添付が複数あることもあるため、「それぞれに適用する(Apply to each)」を追加し、添付を 1 件ずつ処理します。「前のステップから出力を選択します」に、トリガーの「添付ファイル」(Attachments)を指定します。

⑤ ループ内に OneDrive「ファイルの作成」を追加する
「それぞれに適用する」の内側に、OneDrive for Business の「ファイルの作成」を追加します。設定は次のとおりです。
- フォルダーのパス:/(ルート。任意の既存フォルダーで可)
- ファイル名:添付ファイルの「名前」(Name)
- ファイル コンテンツ:添付ファイルの「コンテンツ」(ContentBytes)

OneDrive だけで十分な場合は、ここまでで完成です。⑥は SharePoint にも保存したい人向けの追加手順なので、不要なら読み飛ばして「⑦ 保存する」へ進んでください。
⑥【任意】ループ内に SharePoint「ファイルの作成」を追加する
保存先を SharePoint にしたい場合は、同じループ内に SharePoint の「ファイルの作成」を追加します。
- サイトのアドレス:保存先の SharePoint サイト
- フォルダーのパス:/Shared Documents(ドキュメント ライブラリの既存フォルダー)
- ファイル名:添付ファイルの「名前」(Name)
- ファイル コンテンツ:添付ファイルの「コンテンツ」(ContentBytes)

⑦ 保存する
右上の「保存」をクリックします。「フローを開始する準備ができました」と表示されれば、トリガーとループ内の保存アクションがエラーなくつながっています。

テストで動作を確認する
添付ファイル付きのテストメールを送る
動作確認は、自分のアカウントから自分宛てに添付付きメールを送るのが手軽で安全です(その場合、トリガーの「差出人」には自分のアドレスを入れておきます)。ここでは件名「【テスト】添付ファイル自動保存フロー確認」に、test-invoice.pdf と test-report.txt の 2 つを添付して送信しました。

実行履歴で「成功」を確認する
メールが届くと、数十秒〜数分でフローが自動起動します。フローの実行履歴を開き、状態が「成功」になっていることを確認します。

実行詳細を開くと、「それぞれに適用する」が添付 2 件分ループ(1/2)し、その中の OneDrive「ファイルの作成」と SharePoint「ファイルの作成」がどちらも緑チェック(成功)になっているのが分かります。

保存先を実地確認する
最後に、実際の保存先を見てみましょう。OneDrive を開くと、添付の test-invoice.pdf と test-report.txt が保存されています。サイズも 0 バイトではなく、中身がきちんと入っています。

SharePoint のドキュメント ライブラリにも、同じ 2 ファイルが保存されています。これで「届いた添付を 2 か所へ自動保存」まで通りました。

応用:同名ファイルの上書きを防ぐ
毎月「請求書.pdf」のように同じ名前の添付が届く場合、そのまま保存すると後から来たファイルで上書きされてしまいます。これを防ぐには、ファイル名の先頭に受信日時を付けると、実行ごとに別ファイルとして残せます。
OneDrive / SharePoint「ファイルの作成」のファイル名を、次のような式に変更します(添付ファイル 名前 の部分は動的コンテンツの「名前」に置き換えてください)。
concat(formatDateTime(addHours(utcNow(), 9), 'yyyyMMdd_HHmmss_'), item()?['Name'])これで 20260616_090000_請求書.pdf のように、先頭に日本時間のタイムスタンプが付き、上書きを防げます。
よくある質問
- プレミアムライセンスは必要ですか?
不要です。Office 365 Outlook・OneDrive for Business・SharePoint・コントロールはいずれも標準コネクタで、プレミアム扱いのアクションは使いません。
- 保存したファイルが 0 バイト(空)になってしまいます。
トリガーの詳細オプションで「添付ファイルを含める」が「はい」になっているか確認してください。ここが「いいえ」のままだと添付の中身(ContentBytes)が取得されず、空のファイルが作成されます。
- メールが届いてもフローが起動しません。
「添付ファイル付きのみ=はい」にしている場合、添付のないメールでは起動しません。送ったメールに本当に添付が付いているか、また「差出人」フィルターが実際の差出人アドレスと一致しているかを確認してください。
- OneDrive と SharePoint、どちらか一方だけにできますか?
はい。本記事では両方を解説していますが、ループ内の「ファイルの作成」を片方だけにすれば、その保存先だけに保存されます。自分の運用に合うほうを選んでください。
- 特定の件名のメールだけを対象にできますか?
できます。トリガーの詳細オプションにある「件名フィルター」に文字列を入れると、その語句を件名に含むメールだけが対象になります。差出人フィルターと併用すれば、より確実に絞り込めます。
まとめ
Power Automate でメールの添付ファイルを自動保存する基本は、「新しいメールが届いたとき (V3)」→「それぞれに適用する」→「ファイルの作成」の流れです。標準コネクタだけで作れて、プレミアムライセンスは要りません。
- 添付ファイルを含める=はい(これを忘れると中身が空になる)
- 添付ファイル付きのみ=はい+差出人で対象を絞る
- 保存は「それぞれに適用する」の内側で、ファイル名=Name・コンテンツ=ContentBytes
この 3 点を押さえれば、請求書や見積などの添付を取りこぼさず、決まった場所へ自動で集約できます。まずは自己送信のテストで動作を確認し、慣れてきたら件名フィルターやタイムスタンプ付きファイル名など、自分の業務に合わせて拡張してみてください。
あわせて読みたい
Power Automateの全体像・基本・料金・実例一覧はこちらにまとめています。

Formsの添付ファイルを保存したい場合はこちら。

OneDriveへ保存する基本形はこちら。

保存先をBoxにしたい場合はこちら。






