説明
この関数を使用して複数の条件をチェックし、IF ステートメントを複数入れ子にすることなく、最初の TRUE 条件に対応する値を返却する。CHILDREFSと併用可能です。
構文
IFS(logical_test1, value_if_true1, [..., logical_test_127, value_if_true_127])
入力
この関数は以下の引数を承認します:
| 名称 | 必須 | 説明 | 有効な入力 |
|---|---|---|---|
論理テスト_1 |
はい | 最初の評価条件。 | TRUE または FALSE と評価できる値または式。 |
値_if_true_1 |
はい |
logical_test_1 が TRUE の場合に返却する値。 |
テキスト、数値、論理値を含む任意の値。 |
logical_test_n, |
オプション | 条件と結果の追加ペア。 |
logical_test_1 およびvalue_if_true_1 と同じ条件。 |
例
サンプルデータ
| A | B | |
|---|---|---|
| 1 | スコア | グレード |
| 2 | 95 | A |
| 3 | 84 | 非常に良い |
| 4 | 75 | 良い |
| 5 | ノースコア | |
| 6 | 60 | 失敗 |
数式のサンプル
| 使用例 | 数式 | 説明と結果 |
|---|---|---|
| 一連の条件を使ってスコアにレターグレードを割り当てます。 | =IFS(A2>=90,"A",A2>=80,"B",A2>=70,"C",A2>=60,"D",TRUE,"F") |
この数式は次のように機能する:
このデータセットでは、この数式は"A" を返します。 |
| 階層化された条件設定を用いて、スコアに基づく記述的評価を提供します。 | =IFS(A3>95, "Excellent",A3>82, "Very Good",A3>75, "Good",A3>65, "Satisfactory",TRUE, "Needs Improvement") |
この数式は次のように機能する:
このデータセットでは、数式は"Very Good" を返します。 |
| 優秀」または「完璧」カテゴリーを含む、詳細なレターまたは記述的評点を割り当てます。 | =IFS(A4=100,"Perfect",A4>=90,"Outstanding",A4>=80,"Great",A4>=70,"Good",A4>=60,"Pass",TRUE,"Fail") |
この数式は次のように機能する:
このデータセットでは、数式は"Good" を返却します。 |
| 空白セルと無効な得点を処理しながら、提供された値に基づいて基本的な合否評点を提供します。 | =IFS(ISBLANK(A5), "No Score",A5>100, "Invalid",A5>=70, "Pass",TRUE, "Fail") |
この数式は次のように機能する:
このデータセットでは、数式は"No Score" を返します。 |
| 空白セルと無効な得点を処理しながら、提供された値に基づいて基本的な合否評点を提供します。 | =IFS(ISBLANK(A6), "No Score",A6>100, "Invalid",A6>=70, "Pass",TRUE, "Fail") |
この数式は次のように機能する:
このデータセットでは、数式は"Fail" を返します。 |
メモ
- IFSは条件を順番に評価し、最初にTRUEになった条件に対応する値を返却する。
- どの条件もTRUEでなく、最終的にTRUEの条件がない場合、IFSは#N/Aエラーを返却する。
- IFSは最大127の条件と値のペアを扱うことができる。
- IFSは、複数の条件に対して入れ子のIF ステートメントよりも効率的で読みやすい。
ヒント
- 他の条件が満たされない場合に対処するために、最終的なTRUE条件を常に含む。
- チェックする条件が2つ以上ある場合は、入れ子IF ステートメントの代わりにIFSを使用する。
- 予期せぬ結果を避けるために、条件が互いに排他的であることを確認する。
- 複雑な論理テストでは、IFS条件内でAND,OR,NOT 関数を使用することができます。
- 大きなデータセットを扱う場合は、VLOOKUP またはINDEX/MATCH を使用するとパフォーマンスが向上します。