複数の条件を順番に判定する(Else if・60点と80点の境界)
点数を80以上、60以上の順に判定してA・B・Cへ分けます。80点では次の条件を調べない理由と、境界値で結果を確認する方法を図で説明します。
画面上の名前は、表示言語やバージョンによって異なる場合があります。Desktopの例は、フロー作成時に「Power Fx を有効にする」をオフにした標準構文です。Power Fx対応フローでは式・変数参照・インデックスの書き方が異なります。このページでは変数を %変数名% と表記します。出力変数の名前を入力する欄では、前後の % は付けません。
実行前に確認
- この練習はWindows上で人が画面を操作する有人・手動実行です。クラウドサービスへの接続は不要です。クラウドからの起動や無人実行などへ広げる場合は、別途ライセンス・実行環境を確認してください。
- Scoreと比較値は数値型にそろえ、0~100の整数だけを使います。空欄・文字列・範囲外を検証する処理は含みません。Elseは入力エラーの検出ではなく、前の条件に一致しなかった場合の分岐です。
- メッセージはOKを押すまで待機します。正常な実行ではA・B・Cのうち1つだけが1回表示されます。ダイアログ表示などのエラーで停止した場合は、Elseへ自動的に回るわけではありません。
- 例は架空の点数による条件分岐の練習です。ファイル保存やメール送信は行いません。実際の業務の評価基準を定めるものではありません。
1使うアクション
- アクション 1変数の設定
- アクション 2If
- アクション 3メッセージを表示80以上:A。ほかの枝は実行しない
- アクション 4Else if
- アクション 5メッセージを表示80未満かつ60以上:B
- アクション 6Else
- アクション 7メッセージを表示60未満:C
- アクション 8End条件全体の終わり
図で見る処理のイメージ
概念図入力は数値のScoreです。最初に80以上かを調べ、いいえのときだけ60以上を調べます。75ならB、80ならAだけを表示します。
最初に当てはまった枝だけを通る
Score = 750~100の整数で試す
いいえのときだけ次へ
いいえのときだけElseへ
End選ばれた枝から合流。この例はここで終了
80点に変えると、Aだけ80は「60以上」にも当てはまりますが、Aを選んだ後はElse ifへ進みません。表示待ちやエラー停止は、この正常な分岐終了とは別です。
75 → B、80 → A。80のとき、60以上のElse ifは判定しません。いずれも表示は1回です。
狭い画面では、表を横にスクロールして「判定しない」と表示結果を確認できます。
| Score | If:80以上? | Else if:60以上? | 表示は1回だけ |
|---|---|---|---|
| 59 | いいえ | いいえ | C |
| 60 | いいえ | はい | B |
| 75(最初の例) | いいえ | はい | B |
| 79 | いいえ | はい | B |
| 80 | はい | 判定しない | A |
| 81 | はい | 判定しない | A |
各ケースは最初の変数設定から独立して実行する想定です。表と図は固定した数値の期待値であり、実際のPower Automateフローを実行して確認した結果ではありません。
設定と処理を説明する模式図です。実際の設定画面や実行結果のスクリーンショットではありません。
2実際の設定内容
入力する値・操作手順を確認する7ステップの設定と確認方法
- 1
準備:Power Automate for desktopで、Power Fxをオフにした練習用フローを作ります。「変数の設定」で変数名=Score、値=数値の 75 にします。数値には引用符を付けません。この練習では0~100の整数だけを設定し、入力ファイルや外部サービスは使いません。
- 2
If:最初のオペランド=%Score%、演算子=以上(>=)、2番目のオペランド=数値の 80。Ifの直下に「メッセージを表示」を置き、タイトル=判定、表示するメッセージ=A、ボタン=OK、自動的に閉じる=オフにします。
- 3
同じIfとEndの間へElse ifを追加し、Aのメッセージの後、Elseの前に置きます。最初のオペランド=%Score%、演算子=以上(>=)、2番目のオペランド=数値の 60。直下の「メッセージを表示」は本文=B、ほかの設定はAと同じです。ここへ進む時点で80未満なので、Bの範囲は60以上80未満になります。
- 4
ElseをBのメッセージの後へ追加します。Elseには条件を入力しません。直下の「メッセージを表示」は本文=C、ほかの設定はAと同じです。前の2条件がどちらも偽のときだけ、この枝へ進みます。
- 5
Cのメッセージの後にあるEndで、If・Else if・Elseをまとめて閉じます。Else ifの前へ別のEndを置かないでください。この例は選ばれた枝のメッセージを1回表示し、OKを押すとEndの後へ進んで終了します。共通処理を足す場合は、このEndの後へ置きます。
- 6
確認:保存して最初から実行し、75ならBが1回だけ表示されることを確認します。次に最初の「変数の設定」の値だけを59、60、79、80、81へ1つずつ変え、その都度保存して最初から実行します。期待値は順にC、B、B、A、Aです。80では60以上も数学的には成り立ちますが、Else ifは判定しません。確認後は75へ戻して保存します。
- 7
結果が違うとき:以上(>=)を、より大きい(>)にしていないか確認します。60以上を先に置くと80や81もBになります。また、Else ifを独立したIfへ置き換えると、80ではAとBの両方が表示され得ます。1つのIf/Else if/Elseブロックになっているか、Endの位置とインデントを見直してください。
- 対象環境
- Power Automate for desktop(Windows)
- 更新日
- 2026年10月13日