はじめに
Excel(エクセル)のIFS関数は、条件分岐を複数回連続して指定する事ができる関数です。
条件1がFALSEの場合に条件2を判定、条件2がFALSEの場合に条件3を判定…というように連続した条件分岐の処理を行うことができます。
最終的に条件に一致するものがない場合は#N/Aエラーを返します。
IF関数でも同じようなことができますが、IFS関数の方がシンプルに記述する事ができます。
構文
IFS(論理式1, 値が真の場合1, [論理式2, 値が真の場合2]...)
| 論理式1 | 必須 | 条件式、論理値を返す関数などを指定します |
| 値が真の場合1 | 必須 | 論理式1が真の場合の数値、文字列、計算式などを指定します |
| [論理式2, 値が真の場合2]… | 省略可 | 論理式1がFALSEの場合の倫理式等を指定します |
すべての論理式がFALSEの場合は#N/Aエラーを返します。
使用例
サンプルデータ| A | B | |
|---|---|---|
| 1 | 採点結果 | 75 |
| 2 | ||
| 3 | 80 | 優 |
| 4 | 60 | 可 |
| 4 | 0 | ✕ |
数値範囲の条件を指定
=IFS(B1>=A3, B3, B1>=A4, B4, B1>=A5, B5)
解説
=B1がA3以上ならB3、B1がA4以上ならB4、B1がA5以上ならB5を表示する
=75が80以上なら”優”、75が60以上なら”可”、75が0以上なら”✕”を表示する
=75は80以上ではないので、次の論理式を判定
=75は60以上である
=”可”を表示
一致する条件がない場合
=IFS(B1>=A3, B3)
解説
=B1がA3以上ならB3を表示する
=75が80以上なら”優”を表示する
=75は80以上ではない
=次の論理式なし
=#N/Aエラーを表示
一致する条件がない場合は、#N/Aエラーを返します。
IFNA関数やIFERROR関数を使ってエラーを表示させないようにする事ができます。
=IFNA(IFS(B1>=A3, B3), "採点不可")
解説
=B1がA3以上ならB3を表示する
=75が80以上なら”優”を表示する
=75は80以上ではない
=次の論理式なし
=#N/Aエラー
=IFNA関数により"採点不可"を表示する
おわりに
いかがでしたでしょうか?
IFS関数は、複数の条件分岐がある処理を行いたい場合に有効です。
ただし、あまり多くの条件を記載すると処理が複雑になりますのでおすすめされていません。
Excel関数を有効に使えば、業務を効率化することができるようになるでしょう。
一度使ってみてはいかがでしょうか。