【Excel/IFS関数】1 つ以上の条件を満たすかどうかを判定し、最初に満たした条件に対応する値を返す

IFS関数は
 ・セルの値が1 つ以上の条件を満たすかどうかを判定して
 ・最初に満たした条件に対応する値を返す
関数です!

条件は
 ・2つでも3つでも4つでも指定可能
です!

IFS関数はプログラミングでいう
 ・IF ~ ELSE IF ~ ELSE文
です!
ELSE IFがポイントです。

IFS関数は
 ・Excel2019で追加された関数
です!

IFS関数は
 ・IF関数の強化版
です!
※IF関数はプログラミングでいうIF文(ELSE IF無し)です。

PR

IFS関数の書式

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引数の記載は任意です(必須ではないです)。

PR

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, "不可")
IFS関数の結果
IFS関数の結果

例えばセル「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
PR

参考①

IFS関数の詳細については、公式サイトをご確認ください。

PR

参考②

Excel2019で「IFS関数」が追加される以前は、
 ・「複数のIF関数」を組み合わせて(入れ子にして)
 ・「1つ以上の条件を満たすかどうかを判定し、最初に満たした条件に対応する値を返す」
を実現していました。

「複数のIF関数」を組み合わせ(入れ子)を見たら、
 ・「IFS関数と同等のことをしているんだなぁ」
と考えてよいです。

タイトルとURLをコピーしました