Power Automate Desktop 条件分岐(IfとSwitch)

2021年7月5日

条件を指定して、その結果によって行う動作を変える条件分岐について紹介します。

条件分岐について

IfとSwitchの使い分け

Ifを使えば、どのような状況にも対応できるため最低限、Ifだけ使えば構いませんが、

Switchは「一つの変数に対して2つ以上の分岐条件がある場合」にIfより適切です。

よって基本的にはIfを利用し、Switchが適切な場面と感じたらSwitchを使うとよいでしょう。

利用方法

If(「If」と「Else If」と「Else」)

If

アクションの「条件」より「If」をドラッグします。

パラメータの選択画面が表示されるので設定します。

「最初のオペランド」と「2番目のオペランド」に比較対象の二つを指定して、

演算子に比較方法を指定します。

{x}をクリックすると変数を指定可能です。

「最初のオペランド」には変数、(固定値を設定可能ではありますが)

「2番目のオペランド」には固定値か変数を指定するのがオーソドックスな形です。

下の図では変数「num_1」が10の時、結果がTrueになります。

IfとEndの間にTrueの時に行いたいアクションを設置します。

次の例では変数「num_1」が10の時のみ「メッセージを表示」します。

Else if

Else ifは条件を追加するためのアクションです。Ifの中にドラッグします。

次の例では変数「num_1」が10以上の場合、IFの中のアクションが実行され、

5~9の場合、Else ifの中のアクションが実行されます。

複数の条件に一致する場合、上から順に判定され最初に合致するものだけが実行されます。

Else

Elseはどの条件にも合致しない場合を設定するためのアクションです。

Ifの中で最後にのみ設置できます。

次の例では変数「num_1」が10以上の場合はIfの中、

5~9の場合はElse ifの中、4以下の場合はElseの中のアクションが実行されます。

Switch(「Switch」と「Case」と「Default case」)

アクションの「条件」より「Switch」をドラッグします。

パラメータの選択画面が表示されるので設定します。

基本的には「チャックする値」に変数を指定します。

登録されている変数は{x}から選択します。

次に「Case」を「Switch」の中にドラッグします。

パラメータの設定画面で条件をしています。

下の例では「メッセージを表示」の押されたボタンによって行うアクションが変わります。

このように「Switch」と「Case」は必ず必要です。

「Default Case」はどの「Case」にも合致しない場合に行うアクションです。

「Swicth」の末尾にドラッグして利用します。

「Default case」はなくても構いません。

(下のフローでは「Default case」に行くことは無いですが、サンプルとして)

数式と演算子

条件を数式で指定する場合は、以下の演算子を利用します。

演算子Trueになる条件
A = BAとBが等しい
A != BAとBが等しくない
A < BAはBより小さい
A <= BAはB以下
A > BAはBより大きい
A >= BAはB以上
A OR BAとBのどちらかがTrue
A AND BAとBの両方がTrue

ORとANDは低い優先度で評価されますが、()で囲むと優先度を高くできます。

IfでもSwitchでも数式は利用できますが、Switchは複雑な数式向きではないので、

Ifでのみ利用するほうが無難です。

例えば変数「num_a」と変数「num_b」が「どちらも3以上」という条件にする場合は

「最初のオペランド」を「%num_a >= 3 AND num_b >= 3%」、

「演算子」を「と等しい(=)」、

「2番目のオペランド」を「%True%」にします。

次の記事

リスト(一次元配列)

リスト(一次元配列)の使い方を紹介します。

関連記事

初心者向けの記事一覧

Or(And)でIFの条件を設定する方法