はじめに
本記事の対象者
- Power Automateでメールのやり取りをした人を、自動的にoutlookの連絡先に登録したい人
本記事の目的
- Power Automateでメールのやり取りをした人を自動的に登録していく方法を知る。
- outlookに登録済みのユーザは、登録しないようにする。
新着メールの差出人をoutlookの連絡先に登録する方法
2021年2月から無料版Power Automateを使って今まで貯めてきたノウハウを解説していきます。
自分のノウハウのまとめは、「【業務効率向上】【備忘】PowerAutomateの使い方一覧」にあります。もしよろしければ確認してみてください!!
今回の紹介するフロー
今回は、今までやり取りをした差出人を自動的に登録するフローです。
以前、記事にしたフローの改良版です。
【以前の記事】
【業務効率向上】PowerAutomateで新着メールの差出人をoutlookの連絡先に登録する(コネクタ「連絡先の作成」の使い方)
下のフローが、その改良版のフローになります。
今回改良する前の問題点は、すでに登録しているユーザも登録されてしまうというものです。
改良部分を追加分が反映されているため、少し長いフローになっていますが、お付き合いください。
今回のフローにおける仕様のコメント
新着メールの差出人の連絡先をoutlookの連絡先に登録するものですが、一連の流れを下に書きます。
- 任意の頻度でフローを実行
- フロー実行時に新着25件を取得
- outlookの連絡先一覧を取得
- ユーザ登録フラグの変数を定義
- 新着メールの差出人が連絡先一覧にあるかどうかを判定
- ユーザが登録されている場合は、何もしない
- ユーザが登録されていない場合は、outlookの連絡先に差出人の連絡先を登録
Power Automateで新着メールの差出人をoutlookの連絡先に登録する
(登録済ユーザは登録しないようにする)
まずはトリガーから説明していきます。
トリガー(繰り返し):同左
トリガーは、「繰り返し」です。
このコネクタでは、どのような頻度でフローを実行するか指定するものです。
今回は、1週間にしていますが、実行したい間隔で設定してください。
個人的には1時間でいいと思います。
コネクタ1(メールの取得(V2)):新着メール25件の取得
1つ目のコネクタは、「メール取得(V2)」です。
このコネクタでは、フローが実行された時点での新着メール25件を取得します。
コネクタ1の設定値については、関係するところのみ表にまとめておきます。
No | 設定項目名 | 設定値 | 備考 |
---|---|---|---|
1 | フォルダ | Inbox |
仕分けルールで特定のフォルダに来たメールのみ登録すればいい場合は、そのフォルダを指定してください。 |
2 | 上 |
25 ※上限が「25」のようです。 |
フローが実行された時点での新着メールを何件取得するか |
No2の「上」は、個々のメールの量によって指定してください。
個人的に仕事上、1時間に25件くらいくるイメージなので、トリガーと合わせて設定してください。
コネクタ2(複数の連絡先の取得):同左
2つ目のコネクタは、「複数の連絡先の取得」です。
このコネクタでは、outlookの連絡先にある「連絡先」フォルダの連絡先一覧情報を取得します。
フォルダーIDを「自分の連絡先」にすれば良いので、その他の項目の説明は割愛します。
コネクタ3(変数の初期化する):ユーザ登録フラグ定義
3つ目のコネクタは、「変数の初期化する」です。
このコネクタでは、後ほど新着メールの差出人がoutlookの連絡先一覧に含まれているかを判定するためのフラグを設定します。
なので、格納するものは「登録なし」か「登録あり」の2値になります。
そのままですが、コネクタ3の設定値を表にします。
No | 設定項目名 | 設定値 | 備考 |
---|---|---|---|
1 | 名前 | ユーザ登録フラグ | |
2 | 種類 | 文字列 | |
3 | 値 | 登録なし |
設定値は、 {登録なし、登録あり}の2値です。 |
コネクタ4(Apply to each):登録済の各連絡先処理
4つ目のコネクタは、「Apply to each」です。
このコネクタでは、コネクタ1「新着メールの差出人」がコネクタ2「outlookの連絡先一覧」に含まれているかを処理する肝のロジックになります。
それでは、下で細かくいてきます。
コネクタ4-1(JSONの解析):同左
5つ目のコネクタは、「JSONの解析」です。
解析対象のJSONでは、コネクタ2(複数の連絡先の取得)の項目「電子メールアドレス」です。
このコネクタの設定方法は、以下のページを参考にお願いいたします。
参考ページ:【業務効率向上】PowerAutomateのアクション「JSONの解析」の使い方
コネクタ4-2(条件):新着メールの差出人が連絡先一覧にあるかどうかを判定
「JSONの解析」の後に、Apply to eachで「電子メールのみ抽出」「新着メールの差出人アドレス抽出」があります。
各「Apply to each」は、新着メールとoutlookの連絡先一覧からアドレス情報を抽出しようとした際に、自動で作られたので説明を割愛します。
2つの「Apply to each」の中に含まれるのは、6つ目のコネクタは、以下の「条件」です。
このコネクタでは、新着メールの差出人が連絡先一覧にあるかどうかを判定後に以下の処理をします。
- outlookの連絡先一覧に含まれている場合:ユーザ登録フラグを「登録あり」に変更
- outlookの連絡先一覧に含まれていない場合:何もしない
コネクタ4内での処理イメージは、
- 1通目の新着メールの差出人が連絡先一覧にあるか総当りする。
あれば、フラグを「登録あり」に変更 - 2通目の新着メールの差出人が連絡先一覧にあるか総当りする。
あれば、フラグを「登録あり」に変更 - 3通目の新着メールの差出人が連絡先一覧にあるか総当りする。
あれば、フラグを「登録あり」に変更 - ‥‥‥
みたいな感じです。
結構単純です。
コネクタ4-3(条件):ユーザ登録フラグが「登録あり」かを判定
7つ目のコネクタは、「条件」です。
このコネクタでは、条件コネクタ4-2の「新着メールの差出人が連絡先一覧にあるかどうかを判定」によって、連絡先を登録するかを判定します。
判定条件による処理は以下の通りです。
ユーザ登録フラグが「登録あり」の場合は、すでにoutlookの連絡先一覧に含まれているため、ユーザ登録フラグを「登録なし」にリセットする。
ユーザ登録フラグが「登録あり」の場合は、outlookの連絡先一覧に含まれていないため、ユーザ登録をする。
この処理をして、また次の新着メールの差出人がoulookの連絡先一覧に含まれているかを判定していきます。
今回のフローの説明は以上になります。
実行結果
今回は、outlookに自分のところに差出人のデータが少なかったので、実行で結果はありません。
すみません!!
みなさんも、やり取りした人の連絡先が自動で登録されていくので、ちょっとした業務をなくすことに役立つと思っていますので、ぜひ使ってみてください!!
補足情報 今回のフローの想定用途
今回のフローの想定用途は、使うというよりはこのフローを作成していることで、自動的にやり取りした人の情報がoutlookの連絡先に溜まっていく仕組みになります。
個人的には、登録済のユーザの情報は、新着メールごとに更新などの処理を入れると、電話番号が変わった時に更新する必要がなくなるので、入れていたみたいです。
ただ、処理が複雑になってきてしまい、フロー自体がわかりにくくなって属人化ししまうのが強いかなって思っています。
まとめ
まとめに入ります。
業務効率を上げるために提供されているMicrosoft365のツール群で、今回は新着メールの差出人をoutlookの連絡先に登録する方法(重複回避編)を説明しました。
今回のフローの想定用途は、使うというよりはこのフローを作成していることで、自動的にやり取りした人の情報がoutlookの連絡先に溜まっていく仕組みになります。
以前、記事にした内容の改良版です。
【以前の記事】
【業務効率向上】PowerAutomateで新着メールの差出人をoutlookの連絡先に登録する(コネクタ「連絡先の作成」の使い方)
改良した問題点は、すでに登録しているユーザも登録されてしまうというものです。
これで、やりとした人のアドレスとか名前とか部署名を登録するの面倒臭い業務から解放されるはずです!
最後まで読んでいただきありがとうございます。
コメント