【ファイル自動管理】メールの添付ファイルをOneDriveに自動保存する方法!日付付与で重複も防止|Power Automate

Outlookメールの添付ファイルをOneDriveに自動保存する方法|日付付与で重複も防止【Power Automate】

「毎日届く請求書を、いちいち手動でダウンロードしてフォルダに分けるのが面倒……」 「大事な添付ファイルを保存し忘れて、後からメールを探すのに時間がかかる」

そんな悩みは、Power Automate(パワーオートメイト)で解決しましょう!

今回は、Outlookに届いたメールの添付ファイルを、OneDriveの指定フォルダへ自動的に保存するフローの作成手順を詳しく解説します。さらに、ファイル名の重複を防ぐための「日付自動付与」のテクニックもご紹介します。

目次

添付ファイルをOneDriveに保存するフロー作成3ステップ

所要時間10分

【STEP1】フローのきっかけ(トリガー)を設定する

まずは、フローが動き出す条件を設定します。

1. Power Automateにログインし、[作成] > [自動化されたクラウドフロー] を選択します。

1. Power Automateで [自動化したクラウドフロー] を新規作成します。

2. フロー名を決め(例:添付ファイル自動保存フロー)、トリガーに 「新しいメールが届いたとき (V3)」(Office 365 Outlook) を選んで「作成」をクリックします。

Power Automateにログインし、[作成] > [自動化されたクラウドフロー] を選択

3. 設定画面で [詳細オプションを表示する] を開き、フォルダーや宛先等を設定します。

設定画面で [詳細オプションを表示する] を開き、フォルダーや宛先等を設定

以下の2項目を必ず 「はい」 に変更してください。

  • 添付ファイルを含める: はい
  • 添付ファイルがある場合のみ: はい
POINT

ここを「はい」に設定しないと、添付ファイルがないメールでもフローが起動してしまい、エラーの原因になるので注意しましょう。

【STEP2】添付ファイルを1つずつ処理する(Apply to each)

メールには複数のファイルが添付されている可能性があるため、すべて漏らさず保存するための「繰り返し処理」を追加します。

1. 「新しいステップ」をクリックし、コントロール> 「それぞれに適用する(Apply to each)」 を選択します。

「新しいステップ」をクリックし、コントロール> 「それぞれに適用する(Apply to each)」 を選択

2. 「以前の手順から出力を選択」の欄をクリックし、動的なコンテンツから 「添付ファイル」 を選択します。

「以前の手順から出力を選択」の欄をクリックし、動的なコンテンツから 「添付ファイル」 を選択

【STEP3】OneDriveにファイルを保存する

ループの中に、実際にファイルを保存するアクションを追加します。

1. 「Apply to each」の中にある [アクションの追加] をクリック。

2. 「ファイルの作成」(OneDrive for Business) を選択します。

「Apply to each」の中にある [アクションの追加] をクリックし、「ファイルの作成」(OneDrive for Business) を選択

各項目を以下のように設定します。

  • フォルダーのパス: 保存先のフォルダを選択(例:/EmailAttachments
  • ファイル名: 動的なコンテンツから 「添付ファイル 名前」 を選択
  • ファイルの内容: 動的なコンテンツから 「添付ファイル コンテンツ」 を選択

これで基本のフローは完成です!

【応用】ファイル名に「日付」を付けて重複を防ぐ

同じ名前のファイルが届いた場合、デフォルトでは上書きされるかエラーになってしまいます。これを防ぐために、ファイル名に 「受信日」 を自動で追加する方法がおすすめです。

ファイル名の欄に、以下の 「式(Expression)」 を貼り付けてみてください

ファイル名の欄に、以下の 「式(Expression)」 を貼り付けてみてください。

例:請求書_20240520.pdf のように保存する式

concat(first(split(items('Apply_to_each')?['name'], '.')), '_', formatDateTime(convertFromUtc(utcNow(), 'Tokyo Standard Time'), 'yyyyMMdd'), '.', last(split(items('Apply_to_each')?['name'], '.')))

式のPOINT
  • convertFromUtc を使うことで、標準時を日本時間(JST)に変換しています。
  • split を使うことで、元のファイル名と拡張子の間に日付を差し込んでいます。

特定のメールだけを保存したい場合

すべてのメールを保存するとフォルダが散らかってしまうため、トリガー(新しいメールが届いたとき)の項目でフィルタリングをしましょう。

  • 件名フィルター: 「請求書」や「報告書」などのキーワードを入力
  • 差出人: 特定の取引先のメールアドレスを入力

これだけで、必要なファイルだけが自動で整理される「最強の自動保存システム」が完成します。

テストの実行:動作確認をしよう!

フローを作成したらフロー作成画面の右上のをクリックし、動作チェックをしましょう。

テスト結果

OneDriveに添付ファイルが保存されていれば、テスト成功です!

OneDriveに添付ファイルが保存されていれば、テスト成功

まとめ:フローを組み合わせて「完全自動化」へ

今回ご紹介した「メールの添付ファイルを自動保存するフロー」だけでも、手動のダウンロード作業をゼロにできます。しかし、これだけでは「ファイルが届いたこと」に気づくのが遅れてしまうかもしれません。

そこで、以前ご紹介した「OneDriveにファイルが保存されたらTeamsに通知するフロー」との組み合わせが最強です。

  • ステップ1: メールが届き、添付ファイルがOneDriveに自動保存される(本記事の内容)
  • ステップ2: 保存をトリガーに、Teamsへ「新しい資料が届きました!」と自動通知が飛ぶ

この2つのフローを並行して動かすことで、「メール受信 → ファイル保存 → チームへの共有」という一連のプロセスを、あなたは一切手を触れることなく完結させることができます。

まさに「自分専用の有能なアシスタント」が24時間働いてくれているような状態ですね。ぜひ、以下の記事も参考にして、自動化の相乗効果を体感してみてください!

arum’s Check!(編集後記)

「たった数回のクリックで済むダウンロード作業」も、積み重なれば大きな時間泥棒になります。

私も以前は「これくらい手動でやればいいや」と思っていましたが、自動化してからは「あのファイルどこだっけ?」とメールを遡るストレスが一切なくなりました。特に、今回ご紹介した「日付付与の式」は、後からファイルを検索する際にめちゃくちゃ重宝しますよ!

Power Automateは、こうした「小さな面倒」を解決するのが一番得意なツールです。ぜひ皆さんの業務でも試してみてください。

\ この記事がお役に立ったら応援してください /

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次