Notesへ戻る
Power Platformメモ
Power Automateの条件分岐(Condition・Switch)の使い方の入口
Power Automateでフローを条件によって分岐させる「条件(Condition)」と「スイッチ(Switch)」の基本的な使い方を整理したメモです。
Power Automateの条件分岐(Condition・Switch)の使い方の入口
この記事の位置づけ
この記事は、Power Automateの初学者向け技術メモです。フローの動作は環境・コネクタ・バージョンによって変わることがあります。
実際のフローで動作を確認してください。
ざっくり言うと
Power Automateで「ステータスが〇〇のときはAの処理、それ以外はBの処理」のように分岐させたいとき、**条件(Condition)またはスイッチ(Switch)**アクションを使います。
- Condition: 「はい」「いいえ」の2択で分岐する
- Switch: 1つの値によって3パターン以上に分岐する
条件(Condition)の使い方
設定の流れ
- 「新しいステップ」→「コントロール」→「条件」を選択
- 左辺に比較したい値(動的コンテンツや式)を入力
- 比較演算子を選択(次の値と等しい・含む・より大きい、など)
- 右辺に比較する値を入力
- 「はいの場合」「いいえの場合」それぞれに処理を追加する
設定例
[ステータス列] 次の値と等しい [承認済み]
→ はいの場合:承認通知メールを送る
→ いいえの場合:却下通知メールを送る
AND・OR 条件
「条件」アクションの右上にある「詳細設定モード」に切り替えると、AND/OR を組み合わせた複雑な条件を式で書くことができます。
@and(equals(triggerBody()?['ステータス'], '承認済み'), not(empty(triggerBody()?['担当者'])))
スイッチ(Switch)の使い方
3パターン以上に分岐したいときは、Conditionを入れ子にするよりSwitchの方がフローが見やすくなります。
設定の流れ
- 「新しいステップ」→「コントロール」→「スイッチ」を選択
- 「オン」に分岐させる基準の値を設定
- 「ケースの追加」でパターンを追加していく
- 各ケースに処理を追加する
- どのケースにも当てはまらない場合の処理は「既定」に書く
設定例
オン: [ステータス列]
ケース「申請中」: 申請受付メールを送る
ケース「承認済み」: 承認通知を送る
ケース「却下」: 却下通知を送る
既定: ログを残す
Condition と Switch の使い分け
| 状況 | 向いているアクション |
|---|---|
| 2パターンに分岐 | Condition |
| 同じ列の値で3パターン以上に分岐 | Switch |
| 複数の列を組み合わせた複雑な条件 | Conditionを入れ子・詳細設定モード |
注意点
ConditionやSwitchを入れ子にしすぎると、フローが複雑になり管理しにくくなります。
フローが複雑になってきた場合は、子フロー(別のフローを呼び出す)に分割することを検討すると見通しが良くなります。
また、Conditionの条件式で動的コンテンツを扱う際、値が空(null)のケースも考慮しないとエラーが起きる場合があります。