Excel 複数の条件を指定し最初に合致する条件に対応する値を取得(IFS関数)
IFS関数はIF関数の拡張版で、複数の判定条件と結果が存在する場合に有効です。
この記事ではIFS関数の仕様とIF関数に比べて有利な場面を紹介します。
仕様
=IFS(条件式1,条件式1が真の場合の結果 …省略… 条件式127,条件式127が真の場合の結果)
引数 | 省略時の値 | 説明 |
---|---|---|
条件式1~127 | 1のみ省略不可 | 比較演算子などを利用して判定条件を指定。 |
条件式1が真の場合の結果1~127 | 1のみ省略不可 | 対応する条件式がTRUEの場合の結果を指定。 |
使用例とIF関数との比較
点数や曜日など多数の値を取るものに対し複数の結果が存在する場合に有効です。
例えば得点によってランクを表示する例で考えます。
得点 | ランク |
---|---|
80以上 | A |
60以上 | B |
40以上 | C |
39未満 | 再テスト |
IF関数で記述する場合、複数のIF関数をネスト(入れ子構造)に
記述するため数式が複雑になってしまいます。
=IF(得点セル>=80,"A",IF(得点セル>=60,"B",IF(得点セル>=40,"C","再テスト")))
IFS関数では一つの関数記述で済むため読みやすい数式になります。
=IFS(得点セル>=80,"A",得点セル>=60,"B",得点セル>=40,"C",TRUE,"再テスト")
なおIFS関数の最後の条件式は常に一致させるためTRUEとする必要があります。
もし全ての条件に合致しない場合は結果が#N/Aエラーになります。
スピルを利用する方法とメリット
Office365やExcel2019以降ではスピルという形式で記述可能です。
これは複数セルに数式をコピーする場合に便利な機能です。
スピルの利用には条件式を複数セルの範囲で指定します。
数式を入力するのは最初の一つのセルですが、
引数1で指定した高さ分、数式がセルのコピーなしで自動拡大されます。
スピルを利用することで今回の例では、
C3セルに入力するだけでよいため(C6以降にコピーペーストが不要)
以下のメリットがあります。
- 入力の手間が少ない(数式のセルが多いほど効果が大きい)
- 数式を編集した時、コピー忘れのリスクがない(最初のセルを更新すると全セルに反映)
- 絶対参照が不要
- 途中に行を追加した場合、数式のコピー&ペーストが不要。行削除でも壊れにくい。
Excelを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。
Word-A4サイズ:1,400ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方、関数の解説(140種類)、
頻出テクニックと実用例(109種類)、
XLOOKUP関数、LET関数、シートビュー、LAMBDA関数、スピルなど便利な新機能を紹介。
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。