Microsoft Power Platform の小技
Power Automateで、メールの添付ファイルをSharePointに自動保存する方法
件名に「請求書」を含む、添付ファイル付きメールを自動で検知し、SharePointの指定フォルダに保存して、担当者にメールで知らせる仕組みを作ります。
作るものの概要
指定したキーワード(今回は「請求書」)に当てはまる添付ファイルを、SharePointに自動で保存し、関係者に通知するアプリを作ります。保存先は、SharePointサイトの「ドキュメント」の中に作る「請求書」フォルダです。
トリガーとアクション
Power Automateの自動化は「トリガー」と「アクション」の組み合わせでできています。
トリガーには3種類あります。特定の条件を満たしたときに動く「自動化したクラウドフロー」、手動操作で動く「インスタントクラウドフロー」、決まった時間に動く「スケジュール済のクラウドフロー」です。今回は、メールを受信するたびに動かしたいので「自動化したクラウドフロー」を使います。
アクションは、実際の処理の中身です。Office365やMicrosoft Azure、Google、Salesforceなど、さまざまなサービスと連携できます。
フローを作る手順
1. フローを新規作成する
Microsoft365サイトからPower Automateを開き、「+作成」→「自動化したクラウドフロー」を選びます。フロー名は「請求書のフォルダ格納と格納通知フロー」のように、内容がわかる名前にします。トリガー検索バーに「Office365 Outlook」と入力し、「新しいメールが届いたとき(V3)」を選んで「作成」をクリックします。
2. トリガーの条件を絞り込む
「新しいメールが届いたとき」→「詳細オプション」を開き、件名フィルターに「請求書」、添付ファイル付きのみに「はい」を設定します。これで「件名に"請求書"が含まれ、かつ添付ファイルがあるメール」だけに絞り込まれます。
3. 「ファイルの作成」アクションを追加する
「+新しいステップ」から「ファイルの作成(SharePoint)」を選びます。次の4つを設定します。
サイトのアドレスは、SharePointサイトのURLをコピーして貼り付けます。フォルダのパスは「Shared Documents」→「請求書」を選びます。ファイル名は、動的コンテンツから「添付ファイルの名前」を選びます。ファイルのコンテンツは、同じく動的コンテンツから「添付ファイルコンテンツ」を選びます。
ファイル名を指定すると、複数のファイルに対応するため「Apply to each」というアクションが自動的に追加され、その中に「ファイルの作成」が収まる形になります。
4. 「メールの送信」アクションを追加する
「Apply to each」の中に「メールの送信(V2)」(Office365 Outlook)を追加します。宛先には通知したい相手のメールアドレスを、件名には「請求書格納通知」と動的コンテンツの「DisplayName」を、本文には差出人・ファイル名・フォルダ名などを動的コンテンツから挿入します。
エラーチェックと動作確認
保存のたびに「フローチェッカー」を実行し、エラーや警告が0件であることを確認します。問題がなければ「テスト」→「手動」→「テスト」でフローを有効にします。
実際に件名「請求書」、添付ファイルにpdfを付けたメールを送信し、Power Automateの実行結果と、SharePointの「請求書」フォルダに保存されているかを確認します。
業務で使うときの注意点
同じ名前のファイルが重なるとエラーになるため、ファイル名に受信した年月日を追記するなどの工夫が必要です。ファイル名は400字以内とし、SharePointで使えない記号(" * : < > ? \ | やスペースなど)は避けます。
振り分け先のフォルダを複数用意したい場合は、このフローを複製して別フォルダを設定するか、差出人をもとにした分岐(スイッチ)を組み合わせます。
こうした「複数ステップの自動化」も、今はAIに相談しながら組み立てられます
Power Automateのような複数ステップの設定も、どこから手を付けていいか分からなくなることがあります。今は、やりたいことをAIに伝えながら、一緒に組み立てていくことができる時代になりました。
ただ、AIにうまく伝える言い方や、出てきた答えが思っていたものと違ったときの直し方には、少しコツが要ります。リボンスクールの「AIで学ぶ・作る」講座では、AIとのやり取りに実際に慣れていただけます。