※本記事は、Power Automate基礎習得パス(#PA基礎)の第4弾です。
得意先から見積書がメールで送られてくるたびに
OneDriveに保存するのが面倒なんだよなぁ
その作業、Power Automateの「自動化したクラウドフロー」で
自動保存ができますよ。
自動化したクラウドフローは、「メールを受信したタイミング」等、設定したイベントが発生すると自動実行されるフローです。
この記事では、特定の差出人から来たメールの添付ファイルを自動保存するフローを作成します。
今回解説する「条件分岐」をマスターすると、「添付ファイルがPDFだった場合」や「添付ファイルが画像ファイルでなかった場合」など、条件によってフローの実行結果を変更することができます。
作成するフローの内容
本記事では、下記のフローを作成します。
※保存先のフォルダはOneDriveフォルダを利用します
フロー全体のショット
今回作成するフローはこのような形です。
事前準備
OneDrive内に、添付ファイルを保存するためのフォルダを用意してください。
自動化したクラウドフローを作成してみよう
「メールを受信したタイミング」等、決まったイベントでフローを実行させたい場合、「自動化したクラウドフロー」を利用します。
Power Automateの「作成」ボタンより、「自動化したクラウドフロー」を選択しましょう。
下記画面で設定を行います。
① | フローに名前をつけます |
② | 「Office 365 Outlook」の「新しいメールが届いたとき」を選択します。 ※バージョン(V)が複数存在する場合は、一番最新のものを選択してください。 |
Outlook.comとOffice365 Outlookの選択を間違えないように気を付けてください。
設定が完了したら、「作成」ボタンを押して編集画面に進みます。
「新しいメールが届いたとき」の設定
下記条件に絞ったメールでのみフローを実行するため、詳細を設定していきましょう。
「新しいメールが届いたとき」上をクリックしましょう。
下記画面で詳細を設定していきます。
差出人 | 本フローでは、特定の差出人の場合にフローを実行します。 対象の差出人のメールアドレスをカスタム値として入力します。 |
添付ファイルを含める | 「はい」 Power Automateが取得する情報に添付ファイルの情報を含めるかの選択です。 |
添付ファイル付きのみ | 「はい」 受信したメールに添付ファイルがある場合のみ、フローを実行するかを設定できます。 |
「新しいメールが届いたとき」の詳細設定方法は以下を参考ください。
「条件」アクションの追加
本フローでは添付ファイルが画像以外の場合、フォルダに自動保存します。
この設定をすることで、メール本文中のスクリーンショット等を自動保存対象から除外できます。
条件分岐が必要のため、「条件」アクションを追加します。
編集画面の「+」ボタンより「アクションの追加」を選択しましょう。
「Control」をクリックします。
「条件」を選択します。
「条件」アクションでは、3つの項目を設定する必要があります。
① | 比較する値1 |
② | 演算子 (等しい・等しくない・含んでいる・含んでいない 等の条件のこと) |
③ | 比較する値2 |
「添付ファイル名に jpgという文字が 含まない場合」という条件で3つの項目を当てはめると、このような形になります。
① | 比較する値1 → 添付ファイル名 |
② | 演算子 → 「含まない」 |
③ | 比較する値2 → 「jpg」 |
条件設定① 添付ファイル名
まずは、「添付ファイル名」を設定していきます。
「新しいメールが届いたとき」のトリガーでPower Automateが取得する添付ファイル情報を出力したいため、「動的なコンテンツ」を利用します。
動的なコンテンツより、「添付ファイル 名前」を選択します。
項目が見つからない場合は、「表示数を増やす」をクリックしてください。
動的なコンテンツの仕組みについては、下記の記事に詳しく記載しています。
条件設定② 演算子「〇〇を含まない」
続いて演算子を設定していきます。
「含まない」としたいので、ドロップダウンより「does not contain」を選択します。
ちなみに、分岐条件で利用できる演算子一覧は下記の通りです。
演算子 | 意味 |
---|---|
contains | 含んでいる |
does not contain | 含んでいない |
is equal to | 等しい |
is not equal to | 等しくない |
is greater than | より大きい |
is greater or equal to | ~以上 |
is less than | より小さい |
is less or equal to | ~以下 |
starts with | ~で始まる |
does not start with | ~で始まらない |
ends with | ~で終わる |
does not end with | ~で終わらない |
条件設定③ 画像の拡張子「jpg」
添付ファイル名に「jpg」という拡張子が入っているかどうかを判定したいため、「jpg」と手入力します。
条件の追加
画像の拡張子で代表的な物として、他に「png」や「gif」があります。
こちらも条件の判定基準に追加するため、「New item」より行を追加しましょう。
jpgの時と同様に条件を設定します。完成形はこんな形です。
「拡張子が pdf もしくは docx (word) の場合に添付ファイルを保存したい」、といった場合は「OR」で条件を指定する場合は赤枠部分を「OR」に変更してください。
「添付ファイルの取得」アクションの追加
条件に合致する場合、「添付ファイルの取得」アクションで
添付ファイルの情報を取得しましょう。
あれ?添付ファイルの情報は
「新しいメールが届いたとき」トリガーで取得できるんじゃないの?
「添付ファイルの取得」アクションを追加することで、
文字化けすることなくファイルを保存することができます。
「True」直下の「+」アイコンよりアクションの追加をします。
「Office 365 Outlook」のコネクタを選択します。
Outlook.comとOffice365 Outlookの選択を間違えないように気を付けてください。
「添付ファイルの取得」を選択します。
「メッセージID」で、動的なコンテンツより「メッセージID」を選択します。
「添付ファイルID」では、動的なコンテンツより「添付ファイル 添付ファイルID」を選択します。
「ファイルの作成」アクションの追加
最後に、「ファイルの作成」アクションを追加します。
「作成」?添付ファイルを「保存」するんじゃないの?
メールの添付ファイルをそのまま「保存」するのではなく、
そっくり「コピー」してOneDriveに格納する、というのが実際の動きとなります。
前ステップ同様、「+」ボタンの「アクションの追加」をクリックしたら、OneDrive for Businessを選択します。
OneDrive(個人用)とOneDrive for Business(組織用)の選択を間違えないように気を付けてください。
「ファイルの作成」アクションをクリックします。
「フォルダーのパス」では、フォルダアイコンより対象の保存先フォルダを選択します。
「ファイル名」では動的なコンテンツより「添付ファイルの取得」内にある「名前」を選択します。
「新しいメールが届いたとき」内にある「添付ファイル 名前」を選択してもOK。
「ファイルのコンテンツ」では動的なコンテンツより「添付ファイルの取得」内にある「コンテンツのバイト数」を選択します。
フローの保存とテスト
以上でフローの編集は完了です。保存をして、テストを実行します。
テスト実行しても、待てど暮らせど完了しないぞ…?
「自動化したクラウドフロー」の場合、テストの「実行」ボタンをクリックしたら
トリガーで指定したイベントを実行する必要があります。
テスト実行ボタンをクリックしたら左上の案内通り、添付ファイルつきのメールを送信します。
Outlookにて、自分宛てに添付ファイルを付きメールを送信してみましょう。
メールの添付ファイルは、画像ファイル (jpg、png、gif) のものと、それ以外のファイルをどちらも添付してください。
テスト成功後、画像ファイル以外のファイルが指定したフォルダに保存されたことを確認します。
2回目以降のフローのテストを簡単に行う方法
テストを実行する度に、毎回トリガーイベントを起こさないといけないの?
毎回テストで添付ファイルを送信するの、面倒くさいね。
2回目以降のテストで使えるのが「自動」というオプションです。
前回のトリガーを再利用してテストを実行することができます。
スケジュールやインスタントフローはテストで即時フローが実行される反面、自動化したフローはトリガーで指定したイベントを発生させないといけません。
そこで、2回目以降のテストを楽にさせるオプションが「自動」です。
前回のトリガーを再利用でき、即時テストが実行されます。
まとめ
本記事では、#PA基礎 第4弾として、以下の内容をお伝えしました。
- 自動化したクラウドフローの利用方法
Power Automateの「作成」より「自動化したクラウドフロー」を選択することで、指定したイベントを発生させるとフローが自動実行されます。
- 条件アクションの利用方法
左右に比較したい2つの値を入力し、真ん中の演算子を選択することで条件の設定を行うことができます。
- 自動化したクラウドフローのテスト方法
テストの実行ボタンをクリック後、指定したイベントを発生させることでテストを実行できます。
2回目以降にテストを行いたい場合は、「自動」ボタンをクリックすることにより、前回までのトリガーを再利用してテストすることができます。
次の記事では、作成したフローを管理する方法について紹介いたします。
コメント