【PowerAutomate】平日のみ(祝日判定)フローを実行する方法
こんにちは、ほしコラム管理人のほしです。
今回は、PowerAutomateで営業日のみフローを実行するる方法について解説していきます。
現状として、PowerAutomateの機能で「平日のみ」実行することはできますが、祝日についての考慮はできません。
そのため、祝日はフローを実行しないように祝日判定処理を実装していきましょう。
はじめに
PowerAutomateの処理イメージは以下のようになっています。
Outlookの「イベントのカレンダービューの取得(V3)」を使用して祝日を取得します。
取得結果を踏まえて、起動日が祝日の判定をするようになっています。
PowerAutomateの実行結果
11月23日(勤労感謝の日)に処理を実行した場合は、以下になります。
「イベンターのカレンダービューの取得(V3)」の結果で、11月23日に該当する祝日が取得することができています。
条件分岐については、後ほど詳細に説明させていただきます。
11月23日(平日)に実行した場合は、以下になります。
「イベンターのカレンダービューの取得(V3)」の結果で、11月24日に該当する祝日が取得できていないません。
「日本の祝日」のカレンダーから取得できていない場合は、valueは[]になります。そのため、[]の場合は祝日ではない!ということです。
PowerAutomateのフロー
PowerAutomateのフローの全体像は以下のようになっています。
フローの詳細は以下のようになります。
上記の内容について説明していきます。
STEP1「繰り返し」、STEP2「現在の時刻」についての説明は、他の記事などでも紹介していますので、割愛させていただきます。
変数の初期化
変数の初期化では、後続処理の条件で使用するための空のArray変数を初期化しています。
変数を初期化しないでも比較できますよ!とご存知の方がいましたら教えていただきたいです!
イベントのカレンダービューの取得(V3)
イベントカレンダービューの取得(V3)では、フロー実行日と一致する祝日があるか、カレンダーから取得しています。
- カレンダーID:日本の祝日 (プルダウンから選択できます。)
- 開始時刻:「現在の時刻」で取得したフロー実行時の日時
- 終了時刻:「現在の時刻」で取得したフロー実行時の日時
- 詳細オプション:設定なし
日本以外の祝日を取得したい場合は、Outlookの「予定表を追加」から追加してみてください!
条件
条件では、以下のように設定しています。
- 左辺:イベントカレンダービューの取得(V3)で取得した「value」
- 右辺:変数の初期化で宣言した、空の配列
これで、祝日か平日かを判定することができます。条件分岐「Yes」の後続に実行したい処理を記載していくことで平日のみ処理を実行できます。
最後に
最後まで読んでいただきありがとございました。
今回は、PowerAutomateで平日のみフローを実行する方法を解説していきました。
簡単に本記事のまとめになりますが、以下の要領でフローを作成しました。
- 繰り返し (毎週:月曜〜金曜に処理を実行)
- 現在の時刻 フロー起動時の時刻を取得
- 変数の初期化 条件の右辺で使用する配列型の変数を初期化
- イベントのカレンダービューの取得(V3)→ 「日本の祝日」
- 条件 起動日が祝日か判定する
これで、平日かどうかを簡単に判定することができます。定例作業などある方は、これを機にPowerAutomateを試してみてください。