Power Automate DesktopのIfアクションの使い方、オペランドとは

path IT

Power Automate Desktopには条件分岐がデフォルトで複数用意されていますが、Ifは条件分岐では最も基本的な形で扱いやすいです。
If(もし)〇〇なら……と条件を設定し、条件を満たす場合は処理を実行し、満たさない場合は処理をスキップします。

スポンサーリンク

If条件

pad if1
Ifアクションはアクションペインの条件の中にあります。
pad if2
追加するとダイアログが表示されます。このまま保存を押すと、
pad if3
入力必須の項目があるのでエラーになりますが、If thenEndに挟まれたブロックが作られることが確認できます。
Ifに設定した条件が満たされる場合、このブロック内の処理が実行されます。

オペランドとは

pad if6
のことです。正確には1<2のような式のうち、<部分を演算子、それ以外の数値部分をそれぞれオペランドと呼びます。
最初のオペランド2番目のオペランドにそれぞれ1を設定し、演算子がと等しい(=)になっていれば、
pad if4
式としては1=1になります。
pad if5
フローを実行すると、1と1が等しい場合にブロック内の処理を実行するので、中に入れたメッセージ表示処理が起動します。
pad if7
最初のオペランド2番目のオペランドが異なり、演算子がと等しい(=)であれば、
pad if
条件を満たさないので、Ifブロック内の処理はスキップされます。

変数の指定

if オペランド1
条件に使う値は変化しなければ条件である意味がないので、ほとんどの場合、少なくとも片方のオペランドは変数で指定することになります。
変数を指定するにはオペランド右にある{x}をクリックし、
if オペランド2
一覧からクリックするか、変数名を検索するか、直接入力します。

演算子

pad if 演算子1
オペランド同士を比較するための演算子として、次のようなものが用意されています。
名称 意味
と等しい(=) 2つの値が一致する
と等しくない(<>) 2つの値が一致しない
より大きい(>) 最初のオペランドが2番目のオペランドより大きい
以上である(>=) 最初のオペランドが2番目のオペランド以上
より小さい(<) 最初のオペランドが2番目のオペランドより小さい(未満)
以下である(<=) 最初のオペランドが2番目のオペランド以下
次を含む 最初のオペランドの中に2番目のオペランドが含まれる
(例:最初のオペランドがABCの時、
2番目のオペランドがAなら条件を満たす。
2番目のオペランドがDなら条件を満たさない)
次を含まない 最初のオペランドの中に2番目のオペランドが含まれない
空である オペランドの値が空
空でない オペランドの値が空ではない
先頭 最初のオペランドの先頭の文字が2番目のオペランド
(例:最初のオペランドがABCの時、
2番目のオペランドがABなら条件を満たす。
2番目のオペランドがACなら条件を満たさない)
先頭が次でない 最初のオペランドの先頭の文字が2番目のオペランドと異なる
末尾 最初のオペランドの末尾の文字が2番目のオペランド
末尾が次でない 最初のオペランドの末尾の文字が2番目のオペランドと異なる

数字以外も使用可能

pad if 演算子2
あまり細かくバリデーションはかかっていないので、かきくけこ>=あいうえおみたいな条件がエラーなく通ります(なんらかの基準でちゃんと判定される)。間違った変数を設定しててもそのまま動いてしまうので、一応注意。

Else

pad if else1
Elseの中に置いた処理は、上に置いたIfまたはElse Ifの条件がいずれも満たされなかった場合に実行されます。
pad if else2
こんな感じでIf構文の中に組み込みます(追加時にダイアログは表示されません)。ここでは変数が「1」かどうかで処理を分けています。
pad if else3
変数が「1」のまま処理を行うと、Ifの中の処理が実行され、
pad if else4
値を変えてみると、Elseの中の処理が実行されることが確認できます。

Else If

pad elseif1
IfとElseだけだと条件を満たすか、満たさないかだけしか判別できませんが、Else Ifを使うことで条件をA,B,C..と追加していくことができます。
pad elseif2
追加すると、If条件と同じようにダイアログが表示されるので、ここで条件の指定を行います。
pad elseif3
Else Ifは複数追加でき、それぞれ条件を指定できます。
pad elseif4
実行すると、いずれかの条件に合致する場合はIfまたはElse If内の処理が実行され、
pad elseif5
いずれにも合致しない場合はElseが実行されることが確認できます。

条件に複数合致する場合

pad if 条件2
判定は上から順に行われ、いずれかの条件が満たされた時点でその中の処理を実行し、その後Ifに対応したEndまでジャンプします。
たとえばこの場合IfElse Ifはどちらも条件を満たしますが、
pad if 条件1
実行すると、行われるのは最初のIfの中に置かれたアクションのみです。

IF、Else If、Elseの順番

pad if 条件3
If→Else If→Elseの順に判定される必要があります。
Else IfがIfより前にあったりするとエラーになります。

関連記事

Microsoft Power Automate Desktop(PAD)アクション、使い方一覧
Power Automate Desktopの使い方を機能・分類別に参照できるまとめです。

コメント