IFS関数は
・セルの値が1 つ以上の条件を満たすかどうかを判定して
・最初に満たした条件に対応する値を返す
関数です!
条件は
・2つでも3つでも4つでも指定可能
です!
IFS関数はプログラミングでいう
・IF ~ ELSE IF ~ ELSE文
です!
※ELSE IFがポイントです。
IFS関数は
・Excel2019で追加された関数
です!
IFS関数は
・IF関数の強化版
です!
※IF関数はプログラミングでいうIF文(ELSE IF無し)です。
IFS関数の書式
=IFS(論理式①, 論理式①が真(TRUE)の時に返す値,
論理式②, 論理式②が真(TRUE)の時に返す値,
…,…,
TRUE,どれにも当てはまらない時に返す値)
●第1引数
「1つ目の論理式」を指定します。
●第2引数
「1つ目の論理式が真(TRUE)のときに返す値」を指定します。
●第3引数
「2つ目の論理式」を指定します。
●第4引数
「2つ目の論理式が真(TRUE)のときに返す値」を指定します。
●第5引数、第6引数...
・・・
●第7引数、第8引数
第7引数に「TRUE」を記載して、第8引数に「1つ目の論理式等が全て真でない(FALSE)のときに返す値」を指定します。
※第7引数、第8引数の記載は任意です(必須ではないです)。
IFS関数の使用例
ここでは例として以下を指定します。
※セル「D3」に記載するIFS関数を記載します。
第1、2引数:論理式『セル「C3」が90以上の場合』、「返す値」に文字列「優」
第3、4引数:論理式『セル「C3」が70以上の場合』、「返す値」に文字列「良」
第5、6引数:論理式『セル「C3」が60以上の場合』、「返す値」に「可」
第7、8引数:「TRUE」、「どれにも当てはまらない時に返す値」に「不可」
=IFS(C3 >= 90, "優", C3 >=70, "良", C3 >= 60, "可", TRUE, "不可")
例えばセル「D3」に記載したIFS関数は、
・セル「C3」が「95(=90以上)」のため
・文字列「優」が返る
という結果になりました。
上記のIFS関数をプログラミング(IF ~ ELSE IF ~ ELSE文)で表すと、以下になります。
'90以上の場合
If Range("C3") >= 90 Then
Range("D3") = "優"
'70以上の場合
ElseIf Range("C3") >= 70 Then
Range("D3") = "良"
'60以上の場合
ElseIf Range("C3") >= 60 Then
Range("D3") = "可"
'それ以外の場合
Else
Range("D3") = "不可"
End If
参考①
IFS関数の詳細は、公式サイトをご確認ください。
参考②
Excel2019で「IFS関数」が追加される以前は、
・「複数のIF関数」を組み合わせて(入れ子にして)
・「1つ以上の条件を満たすかどうかを判定し、最初に満たした条件に対応する値を返す」
を実現していました。
「複数のIF関数」を組み合わせ(入れ子)を見たら、
・「IFS関数と同等のことをしているんだなぁ」
と考えてよいです。