Power Automate Desktop メールの添付ファイルを指定フォルダに保存


はじめに
毎日届く大量のメールや、1通のメールに含まれる複数の添付ファイル。これらを一つひとつ手作業でフォルダに保存するのは大変な作業です。
本記事では、Power Automate Desktopを使って、これらを完全自動化する方法を紹介します。 「PDFファイルだけ保存したい」といった条件指定はもちろん、「複数のメールを一括処理」し、さらに「それぞれのメールについた複数のファイルも漏らさず保存」する、実務に即したフローの作り方を解説します。
概要解説動画
※要約を抜粋した動画(朗読版)です。声優・井上喜久子さんの声を元にしたAI音声(桜乃そら)を使用しており、ラジオのように聞きやすく、優しい声で聞き流せます。
フロー作成
まず最初に「メール メッセージの取得」を設置します。
もし受信メールがOutlookに登録されているメールアドレスの場合、
「Outlook を起動します」と「Outlook からメール メッセージを取得します」に替わります。
すべてのメールを対象とすることはないと思われるので
ここで抽出条件を指定しますが、メールのフィルターには日付が存在しません。
もし日付を抽出条件にしたい場合はこちらを組み合わせる必要があります。
また今回のように添付ファイルを扱う場合は「添付ファイルを保存します」と
保存先を指定する必要があります。




単純に添付ファイルを保存するだけならこれで完了ですが、カスタマイズしていきます。
なお最初のアクションで指定する添付ファイルの保存先は一時的な保存先です。
別途、最終的なフォルダを用意しておきましょう。
そしてFor eachを設置し、反復を行う値に%RetrievedEmails%を指定します。
生成された変数は任意ですが、今回は%CurrentMail%とします。


その中に更にFor eachを設置し、反復を行う値に%CurrentMail.Attachments%を指定します。
生成された変数は任意ですが、今回は%CurrentAttachment%とします。
添付ファイルは複数存在する場合はあるため、リスト変数になっています。
一つずつ扱うためにはFor eachで繰り返す必要があります。


次に「テキストの文字の大きさを変更」を設置して拡張子を小文字に統一します。
(拡張子が大文字の場合の対処)


変換するテキストに %CurrentAttachment.Extension%、変換先を小文字に指定します。
生成された変数の名前は任意ですが、%Extension%としています。
今回の例は拡張子で判定しますが、ファイル名(.Name)やファイルサイズ(.Size)などの
ファイルのプロパティであれば拡張子以外も条件に設定可能です。


次に「If」を設定します。


「If」 のオプションは次のように設定します。
| 項目 | 設定値 |
|---|---|
| 最初のオペランド | %Extension% |
| 演算子 | と等しい(=) |
| 2番目のオペランド |


もし複数の拡張子を条件にしたい場合は次のようにします。
(拡張子以外の条件を同時に含める場合も同様。AND、ORには注意)
| 項目 | 設定値 |
|---|---|
| 最初のオペランド | %Extension = '.pdf' OR Extension = '.txt'% |
| 演算子 | と等しい(=) |
| 2番目のオペランド | True |


次に保存するフォルダ名を「datetime をテキストに変換」で作ります。


オプションは次のように指定します。(メールの送信日時を文字列に変換)
生成された変数の名前は任意ですが、%DirName%としています。
| 項目 | 設定値 |
|---|---|
| 変換する datetime | %CurrentMail.Date% |
| 使用する形式 | カスタム |
| カスタム形式 | yyyyMMddhhmmss |


次に「フォルダーの作成」を設置します。


オプションは次のように指定します。
| 項目 | 設定値 |
|---|---|
| 新しいフォルダーを次の場所に作成 | 任意の保存先フォルダー (最初の添付ファイル保存先とは別) |
| 新しいフォルダー名 | %DirName% |


更に重複してもいいように(添付ファイルが1メールに複数)、エラーを無視するようにします。


次に「ファイルのコピー」を設置します。


オプションは次のように設定します。
| 項目 | 設定値 |
|---|---|
| コピーするファイル | %CurrentAttachment% |
| 宛先フォルダー | %DirName% |
最後に「フォルダーを空にする」を設置して元のフォルダーに残っている添付ファイルを全て削除します。
これにより条件に一致しないファイルが全て削除され、一致するファイルのみが残ります。


Power Automate Desktopを「最短」で習得したい方へ
「Webで情報を探す時間がもったいない」と感じていませんか
当サイトの人気記事を体系的に整理し、一冊の電子書籍にまとめました 。


ページをめくるだけで、基礎から応用まで階段を登るようにスキルアップできます。
オフラインでも読めるため、通勤時間や移動中の学習にも最適です。
【本書で学べること】
- 基本操作とフローの作成手順
- Excel、Outlook、Webブラウザの自動化 * 実務で必須のエラー処理と頻出テクニック
Kindle Unlimited会員なら追加料金なし(0円)でお読みいただけます。