【PowerAutomate】スケジュール済みクラウドフローを毎月1日や月〜金曜日に動かす。祝日の判定も可能。

スポンサーリンク




作業を自動化する
  • 毎月1日のみ実行したい
  • 月~金のみ実行したい
  • 奇数月のみ実行したい
  • 祝日は実行したくない

この記事では、そんな方に向けてスケジュール済みクラウドフローを好きなタイミングで動かす方法紹介します。

みずしぶき
みずしぶき

この記事を読めば、不要なタイミングでフローが動くのを防げます。

>>日付の関数まとめ<<

スポンサーリンク

通常の設定方法

標準では2つの条件を指定できます。

  • 繰り返し間隔
  • 単位

この2つの条件で指定できる実行タイミングは、

  • 毎日実行
  • 毎時実行

があります。

下記のような実行タイミングは指定できません。

  • 毎月1日のみ実行 →×
  • 月~金のみ実行 →×
  • 奇数月のみ実行 →×
  • 祝日は実行したくない →×

仕事で使う場合は月〜金だけ動かしたいという方もいると思います。
毎日実行でもいいですが、使わないタイミングは動かしたくないですよね。

今回は実行タイミングをカスタマイズする方法を説明します。

実行するタイミングをカスタマイズする

3つの手順でスケジュールをカスタマイズします。

  1. 実行したい日付(月/日/時間/曜日)を指定
  2. 現在の(月/日/時間/曜日)を抽出
  3. 1に2が含まれているか確認

カスタマイズしたフローがこちらです。3つのアクションだけなので簡単です。

3つのアクションは、トリガーになっているRecurrenceの後ろに続けて追加していきます。

この画面では3つのアクションをスコープで1つにまとめています。
スコープを使うとフローが見やすくなるのでオススメです。

アクションの設定内容は次の項目で説明します。

月を指定して実行

データ操作の「作成」アクションを追加。式を入力します。

createArray(1,3,5,7,9,11)

この式は奇数月の指定になります。数字を動かしたい月に書き換えてください。

データ操作の「作成」アクションを追加。式を入力します。

int(addHours(utcNow(),9,'%M'))

コントロールの「条件」アクションを追加。式を入力します。

contains(outputs('処理タイミング'),outputs('現在'))

いいえの場合にコントロールの「終了」アクションを追加。状態「成功」を指定します。

はいの場合には何も設定しません。

以上の設定で実行する月を指定できます。
動かしたいアクションは条件より後ろへ追加してください。

日付を指定して実行

データ操作の「作成」アクションを追加。式を入力します。

createArray(5,6,7,8,9,10,11,12,13,14,15)

この式は5~15日の指定になります。数字を動かしたい日付に書き換えてください。

データ操作の「作成」アクションを追加。式を入力します。

int(addHours(utcNow(),9,'%d'))

コントロールの「条件」アクションを追加。式を入力します。

contains(outputs('処理タイミング_2'),outputs('現在_2'))

いいえの場合にコントロールの「終了」アクションを追加。状態「成功」を指定します。

はいの場合には何も設定しません。

以上の設定で実行する日付を指定できます。
動かしたいアクションは条件より後ろへ追加してください。

時間を指定して実行

データ操作の「作成」アクションを追加。式を入力します。

createArray(9,10,11,13,14,15,16,17)

この式は9時~11時、13時~17時の指定になります。数字を動かしたい時間に書き換えてください。

データ操作の「作成」アクションを追加。式を入力します。

int(addHours(utcNow(),9,'%H'))

コントロールの「条件」アクションを追加。式を入力します。

contains(outputs('処理タイミング_3'),outputs('現在_3'))

いいえの場合にコントロールの「終了」アクションを追加。状態「成功」を指定します。

はいの場合には何も設定しません。

以上の設定で実行する時間を指定できます。
動かしたいアクションは条件より後ろへ追加してください。

曜日を指定して実行

データ操作の「作成」アクションを追加。式を入力します。

createArray(1,3,5)

この式は月、水、金曜日の指定になります。数字を動かしたい曜日に書き換えてください。
【曜日と数字の紐づけ】日=0 月=1 火=2 水=3 木=4 金=5 土=6

データ操作の「作成」アクションを追加。式を入力します。

dayOfWeek(addHours(utcNow(),9))

コントロールの「条件」アクションを追加。式を入力します。

contains(outputs('処理タイミング_4'),outputs('現在_4'))

いいえの場合にコントロールの「終了」アクションを追加。状態「成功」を指定します。

はいの場合には何も設定しません。

以上の設定で実行する月を指定できます。
動かしたいアクションは条件より後ろへ追加してください。

祝日は動かさない

データ操作の「作成」アクションを追加。式を入力します。

createArray('2022/01/01','2022/01/10','2022/02/11','2022/02/23','2022/03/21','2022/04/29','2022/05/03','2022/05/04','2022/05/05','2022/07/18','2022/08/11','2022/09/19','2022/09/23','2022/10/10','2022/11/03','2022/11/23','2023/01/01','2023/01/02','2023/01/09','2023/02/11','2023/02/23','2023/03/21','2023/04/29','2023/05/03','2023/05/04','2023/05/05','2023/07/17','2023/08/11','2023/09/18','2023/09/23','2023/10/09','2023/11/03','2023/11/23','2024/01/01','2024/01/08','2024/02/11','2024/02/12','2024/02/23','2024/03/20','2024/04/29','2024/05/03','2024/05/04','2024/05/05','2024/05/06','2024/07/15','2024/08/11','2024/08/12','2024/09/16','2024/09/22','2024/09/23','2024/10/14','2024/11/03','2024/11/04','2024/11/23','2025/01/01','2025/01/13','2025/02/11','2025/02/23','2025/02/24','2025/03/20','2025/04/29','2025/05/03','2025/05/04','2025/05/05','2025/05/06','2025/07/21','2025/08/11','2025/09/15','2025/09/23','2025/10/13','2025/11/03','2025/11/23','2025/11/24')

この式は2022~2025年の祝日の指定になります。
参考:日本の祝日・休日の日付一覧

データ操作の「作成」アクションを追加。式を入力します。

addHours(utcNow(),9,'yyyy/MM/dd')

コントロールの「条件」アクションを追加。式を入力します。

contains(outputs('処理タイミング_5'),outputs('現在_5'))

いいえの場合にコントロールの「終了」アクションを追加。状態「成功」を指定します。

はいの場合には何も設定しません。

以上の設定で祝日以外を指定できます。
動かしたいアクションは条件より後ろへ追加してください。

関数の参考:式関数のリファレンスガイド

スポンサーリンク

複数の条件を組み合わせる

【AND】全てに一致した場合に動かす

アクションを縦に並べればAND条件として機能します。

【OR】いずれかに一致した場合に動かす

アクションを横に並べればOR条件として機能します。
「並列分岐の追加」でカスタマイズするアクションを追加します。

横並びになるのでカスタマイズのアクションを追加したら、下の合流ポイントから動かしたいアクションを追加します。

まとめ

ススケジュール済みクラウドフローを好きなタイミングで動かす方法を紹介しました。

  1. 実行したい日付(月/日/時間/曜日)を指定
  2. 現在の(月/日/時間/曜日)を抽出
  3. 1に2が含まれているか確認

どんなカスタマイズも3つのアクションだけで設定する事ができます。配列に特定の文字が含まれているか確認するcontains関数の動きがポイントになります。使い方を覚えておきましょう。

PowerAutomateのおすすめ記事
人気ページ
Apply to eachの使い方
アレイのフィルター処理の使い方
日付関数の使い方
エラーを無視する方法
メールの内容をExcelへ転記
メール本文から名前を抽出

>>PowerAutomateの記事一覧を見る<<

お気に入り必須!公式ページ
Microsoft Power Automate
式関数のリファレンス
コネクタのリファレンス
Excel Online (Business)のリファレンス

最後まで読んで頂き、ありがとうございます。

「この記事が参考になった」「お礼でコーヒー代をプレゼントしよう」という方がいましたらチップ(15円〜)をお願いいたします。

Amazonギフト券- Eメールタイプ - Amazonベーシック

メールのあて先は 「mizusibuki8080@gmail.com」です。
※上記のアドレスは投げ銭受け取り専用です。他のメールは受け取れない設定にしてあるのでご注意ください。

作業を自動化する
ネットワークエンジニアになった人
タイトルとURLをコピーしました