Power Automate Desktop 条件分岐(IfとSwitch)
条件を指定して、その結果によって行う動作を変える条件分岐について紹介します。


- 1. 条件分岐について
- 2. 次の記事
- 3. Power Automate Desktopを「最短」で習得したい方へ
- 4. 関連記事
- 4.1. 「条件」の使い方の記事一覧
- 4.2. 初心者向けの記事一覧
- 4.3. Or(And)でIFの条件を設定する方法
- 4.4. 活用例
- 4.4.1. メールの抽出対象を日付範囲で指定
- 4.4.2. メールの添付ファイルを指定フォルダに保存
- 4.4.3. Webフォームに自動入力
- 4.4.4. リスト内の数値の件数・合計・平均・最大・最小を取得
- 4.4.5. URLパラメータを削除する方法
- 4.4.6. URLパラメータのみにする方法
- 4.4.7. テキストを左または右から文字数を指定して削除する方法
- 4.4.8. テキストを左または右から文字数を指定して残す方法
- 4.4.9. 特定の文字列以前・以降・間の文字を抽出する方法
- 4.4.10. 早い方または遅い方の日付を取得する方法(日時の比較)
- 4.4.11. 偶数・奇数の判定方法
- 4.4.12. 絶対値を取得する方法
- 4.4.13. Excelブックにシート名の目次を作成する
- 4.4.14. Excelブックを特定条件で行を削除する
- 4.4.15. Excelブックにシート名の目次を作成する
- 4.4.16. 空白判定の方法
条件分岐について
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 = B | AとBが等しい |
| A != B | AとBが等しくない |
| A < B | AはBより小さい |
| A <= B | AはB以下 |
| A > B | AはBより大きい |
| A >= B | AはB以上 |
| A OR B | AかBのどちらかがTrue |
| A AND B | AとBの両方がTrue |
ORとANDは低い優先度で評価されますが、()で囲むと優先度を高くできます。
IfでもSwitchでも数式は利用できますが、Switchは複雑な数式向きではないので、
Ifでのみ利用するほうが無難です。
例えば変数「num_a」と変数「num_b」が「どちらも3以上」という条件にする場合は
「最初のオペランド」を「%num_a >= 3 AND num_b >= 3%」、
「演算子」を「と等しい(=)」、
「2番目のオペランド」を「%True%」にします。




次の記事
リスト(一次元配列)
リスト(一次元配列)の使い方を紹介します。
Power Automate Desktopを「最短」で習得したい方へ
「Webで情報を探す時間がもったいない」と感じていませんか
当サイトの人気記事を体系的に整理し、一冊の電子書籍にまとめました 。


ページをめくるだけで、基礎から応用まで階段を登るようにスキルアップできます。
オフラインでも読めるため、通勤時間や移動中の学習にも最適です。
【本書で学べること】
- 基本操作とフローの作成手順
- Excel、Outlook、Webブラウザの自動化 * 実務で必須のエラー処理と頻出テクニック
Kindle Unlimited会員なら追加料金なし(0円)でお読みいただけます。