UiPath Studioでのワークフロー作成において、プロセスの分岐や繰り返しなどのロジックを構築するためには、Flow Control(制御フロー) の概念が欠かせません。
たとえば、ある条件に応じて2通りの処理を切り替えるIf/Elseや、選択肢が2つ以上ある場合に便利なSwitchなどを使い分けることで、より柔軟かつ見やすいロボットを設計できます。
また、UiPathではFlowchartとSequenceという2つの主要なワークフロー形式があり、それぞれに応じたフロー制御アクティビティを選択することが重要です。
本記事では、If/ElseやSwitchをはじめとする代表的なFlow Controlの使い方と、Flowchart固有の要素であるDecision diamondなどについて解説します。これらを正しく理解することで、ワークフローの分岐や条件判断をスムーズに行い、複雑な処理をシンプルに整理することが可能になります。
2択の選択
If/Else は、ある条件(式)の結果が真か偽かに応じて処理を分岐するためのアクティビティです。たとえば「変数 x が 10 を超えているかどうか」などの条件を指定すると、真(True)の場合と偽(False)の場合で異なる処理を実行できます。
例えば、以下のような画面があり:

外部から取得した登録用データに基づき、男性の場合は「男 (Male)」をクリックし、女性の場合は「女 (Female)」をクリックします。
外部から取得した性別データは「性別」という変数に保存されます。条件分岐アクティビティの条件欄に条件を記入し、Then(Yes)には「男 (Male)」をクリックし、Elseには「女 (Female)」をクリックします。

UiPath Studio では、Sequence 形式のワークフロー内で If アクティビティとして利用するほか、Flowchart 形式では Decision diamond(菱形の分岐)を使って同様のロジックを表現することが可能です。

2択以上の選択
複数の選択肢が存在する場合は、Switch アクティビティ を利用して、1つの変数の値に応じた分岐処理を実装します。Switch アクティビティは、あらかじめ定義した各ケースに対して、それぞれの処理を設定でき、もし該当するケースがなければ Default ケースの処理が実行される仕組みになっています。
例えば、以下のような画面があり:

外部から取得した登録用データに基づき、日本の場合は「日本」ボタンクリックします、上記ボタン以外の場合は何もしないで、ログ出力をするだけにします。
Studioで条件分岐(switch)アクティビティを利用します。

Switchアクティビティの「TypeArgument」プロパティを設定することで、対象となるデータ型を明示的に指定できます。

フロースイッチも、Flowchart内で利用可能なSwitchアクティビティの一種で、1つの変数の値に基づいて複数の分岐先に遷移させるために使用します。
フロースイッチで実装する場合は以下の通りです。

最後に
本記事ではUiPath StudioのFlow Controlに関する基本的な概念と、実際の業務自動化で役立つif/else、switch、そしてFlowchart内で利用できるフロースイッチの使い方について解説しました。これらのアクティビティを上手に活用することで、複雑なプロセスをシンプルかつ柔軟に制御でき、エラーの少ない自動化ワークフローの構築が可能となります。