松本典子の「はじめよう!Azure Logic Apps/Power Automateでノーコード/ローコード」 第56回
Outlookの「日本の祝日」カレンダーを参照して、祝日の実行をスキップさせる方法
Power Automateで“祝日を除く”平日だけフローを自動処理させるには?
2025年12月10日 11時00分更新
3-4. アクションの設定:イベントのカレンダー ビューの取得 (V3)
次に、Outlookに追加した「日本の祝日」カレンダーから情報を取得します。先ほどの「作成」アクションの下にある「+」をクリックすると、アクションを追加する左ペインが開きます。
検索窓に「Outlook」と入力し、「Office 365 Outlook」コネクタの「詳しく見る」をクリックして、アクション一覧を表示します。この一覧から「イベントのカレンダー ビューの取得 (V3)」アクションをクリックします。
このアクションに設定する内容は次のとおりです。
(1)カレンダーID:「日本の休日」が表示されるので選択
(2)開始時刻:「/」キーを押し「動的コンテンツの挿入」を選んだうえで、「作成」アクションの動的なコンテンツである「出力」を入力
(3)終了時刻:「/」キーを押し「式の挿入」を選んだうえで、以下の内容をコピー&ペースト
formatDateTime(outputs('作成'),'yyyy-MM-ddT23:59:59')
上記の設定によって、Outlookの「日本の休日」カレンダーで、「開始時刻(=フロー実行日の午前0時0分0秒)」から「終了時刻(=フロー実行日の午後23時59分59秒)」の間に登録されているイベントを取得しています。その日が祝日の場合、カレンダーのイベントには祝日の名前が登録されています。
3-5. アクションの設定:条件
次に「条件」アクションを追加し、「今日(フロー実行日)が祝日かどうか」の判定を行います。先ほどと同じように「+」をクリックして、左ペインの検索窓に「条件」と入力し、「コントロール」コネクタカテゴリにある「条件」アクションをクリックします。
このアクションに設定する内容は次のとおりです。
(1)左辺:「/」キーを押し「式を挿入する」にして、以下の内容をコピー&ペーストし、「追加」ボタンをクリック
length(body('イベントのカレンダー_ビューの取得_(V3)')?['value'])
(2)中央:プルダウンメニューから「より大きい」を選択
(3)右辺:「0」を入力
「3-4. アクションの設定:イベントのカレンダー ビューの取得 (V3) 」アクションを実行すると、その日が祝日ならば「value」の値として祝日の名前が出力され、祝日でなければ何も出力されません(“文字数ゼロ”の出力となります)。
上記の「条件」アクションではこれを利用して、値の文字数をカウントするlength関数を使い「文字数が0より大きい(1文字以上)かどうか」を基準として、「今日(フロー実行日)が祝日かどうか」を判定しています。
3-6. 祝日を除いた平日のみ処理を実行する
今回の記事は「“祝日を除く”平日にフローを自動実行させる」方法のご紹介がメインテーマなので、このあとに実行するフローは何でもかまいません。ここでは簡単に、「Teamsにメッセージを投稿する」ことにしました。
「3-5. アクションの設定:条件」の結果は、その日が祝日である場合は「True(真)」に、祝日ではない場合は「False(偽)」になります。
そこで、「False」の枠内にある「+」をクリックし、「Teams」コネクタの「チャットまたはチャネルでメッセージを投稿する」アクションを追加しました(このアクションの設定方法については割愛します)。
このようなフローを作ることで、トリガーが起動する「平日のみ」、さらに「祝日を除く」という条件付きで、フローが自動実行できるようになりました。
さいごに
Power Automateの「スケジュール済みクラウドフロー」は、日々の定期作業を自動化するうえで非常に便利な機能です。今回はOutlookで提供されている「祝日」カレンダーと組み合わせましたが、ほかにも、たとえば「会社の公休日」カレンダーを作って組み合わせれば、“会社の公休日を除く平日だけ”確実に自動実行するといった処理も実現できるでしょう。
また、今回はサンプルのフローとしてTeamsへのメッセージ投稿を行いましたが、社内外への通知の送信、定期的なデータ処理、リマインダーの発行など、さまざまな業務の自動化に応用できます。日々の業務をより確実に、そして効率的に進めるためにも、ぜひ今回の方法を活用してみてください!

この連載の記事
-
第55回
Team Leaders
フォルダーに入れるだけでPDFに自動変換! Power Automateの標準コネクタで実現する -
第54回
Team Leaders
Teamsで「👍」が付いたらPower Automateのフローを自動実行! そんな方法を教えます -
第53回
Team Leaders
Excelの画面上からPower Automateを実行! “自動化の入り口”にしよう -
第52回
Team Leaders
Microsoft Formsへの入力で、Power Automateフローを実行する! 実践的連携術 -
第51回
Team Leaders
Power Automateの「トリガーの条件」が便利! フローの繰り返し実行を細かく制御しよう -
第50回
Team Leaders
顧客ごとに異なる内容のメールを自動送信! Power Automateで柔軟なフローを実現 -
第49回
Team Leaders
Power Automateで自動作成したメール、Outlookに「下書き保存」するには? -
第48回
Team Leaders
Power Automateで「複数の承認ルート」対応の承認ワークフローを作ろう -
第47回
Team Leaders
「スイッチ」アクションで3種類以上の添付ファイルを自動分類/フォルダー保存する -
第46回
Team Leaders
SharePointリストとExcelを活用して、効率的な「お知らせメール」送信フローを作ろう - この連載の一覧へ
