IFS関数ってなに?使い方のポイントとIF関数との違い

ここでは、IFS関数の基本的な使い方とIF関数との違い、数式の作り方を解説します。

 

IFS関数はExcel2016から使用できる新しめな関数ですが、複数条件を指定して、どれに一致したかで返す値を指定できる、とても便利な関数です。

 

ただ、引数の指定の仕方は使い慣れたIF関数と違うところがあり、少し慣れが必要です。

 

そんなIFS関数が使いこなせるようになるために知っておきたいことをポイントとして説明します。

1.IFS関数とは?ポイントは4つ

IFS関数とは「1つ以上の条件が満たされるかを確認し、最初の真条件に対応する値を返す」関数です。

 

IF関数を使ったことのある人は、これでピンとくると思います。IFS関数は、その名前の通り、IF関数で複数条件を簡単に指定できるようになった関数です。

 

IFS関数のポイントは、次の通りです。

ポイント
  • 一致する条件によって返す値を変えられる(IF関数と同じ)
  • 条件を複数、簡単に指定できる
  • 条件判定には優先度がある(IF関数も同じ)
  • 優先度の高い条件から一致した時点で対応した値を返す

1-1.一致する条件によって返す値を変えられる

IFS関数は、一致する条件によって返す値を変えることができます。

 

この点では、IF関数と全く同じです。

 

例えば、あるテストの結果を何段階かで判定することができます。

上のように、80点以上なら「優」、60点以上なら「良」、40点以上なら「可」、それ未満なら「不可」といった具合です。

 

1-2.条件を複数指定できる

IFS関数は、複数の条件を簡単に指定することができます。

 

先ほどの例なら、「80点以上か?」、「60点以上(80点未満)か?」、「40点以上(60点未満)か?」、「それ以外(40点未満)か?」の4つが条件になります。

 

IF関数でも、関数を重ねるとIFS関数と同じことができますが、IFS関数の方が簡単に複数条件を指定できます。

 

1-3.条件判定は優先度がある

IFS関数の条件判定には優先度があり、より最初に指定した条件ほど優先して判定されます。

 

先ほどの例だと、「80点以上か?」と「60点以上(80点未満)か?」では、「80点以上か?」のほうが優先されます(優先されるように書いた方が簡単です)。

 

ちなみに、IF関数を重ねて複数条件指定した場合でも、優先度はあります。

 

1-4.条件に一致した時点で対応した値を返す

IFS関数は、条件に一致した時点で判定は終了し、対応した値を返します。

 

先ほどの例だと、「80点以上か?」の一致した場合には、その後の「60点以上(80点未満)か?」、「40点以上(60点未満)か?」、「それ以外(40点未満)か?」の判定はされません。

 

そのため、優先度を意識して数式を作ることが重要です。

2.IFS関数の数式の形と引数の入れ方

次に、IFS関数の数式の形と、引数で指定する内容、引数の書き方です。

 

2-1.数式の形は

IFS関数の数式の形は、次の通りです。

=IFS(論理式1,値が真の場合1,論理式2,値が真の場合2,…,TRUE,値が偽の場合)

 

このようにIFS関数の引数は、「論理式」と「値が真の場合」のペアになっていて、2セット以上指定するようになっています。

 

そして最後の論理式は必ず「TRUE」が入り、その次の引数には「値が偽の場合」の返す値を指定します。

 

例えば

=IFS(B2>=80,"優",TRUE,"不可")

という数式があった場合、論理式1は「B2>=80」、値が真の場合1は「"優"」、最後の論理式は「TRUE」、値が偽の場合1は「"不可"」ということになります。

 

ちなみに、論理式は最初にあるほど判定の優先度が高いと覚えましょう。  

 

2-2.引数で指定する内容

引数で指定する内容は、それぞれ次の通りです。

項目名 指定する内容

① 論理式1

1つ目の論理式(条件式)を指定
② 値が真の場合1 1つ目の論理式に一致した場合に返す値を指定
③ 論理式2 2つ目の論理式(条件式)を指定
④ 値が真の場合2 2つ目の論理式に一致した場合に返す値を指定
⑤ 最後の論理式 TRUEを指定
⑥ 値が偽の場合 どれにも当てはまらなかった場合に返す値を指定

例えば、

=IFS(B2>=80,"優",TRUE,"不可")

という数式は、「セルB2が80点以上なら『優』、そうでなければ『不可』を返しなさい」、という意味になります。

 

2-3.各引数の書き方

項目名 指定の例

① 論理式1

条件式で指定(例:B2>=80)
② 値が真の場合1 文字列、数値、数式で指定(例:"優")
③ 論理式2 条件式で指定(例:B2>=80)
④ 値が真の場合2 文字列、数値、数式で指定(例:"可")
⑤ 最後の論理式 TURE
⑥ 値が偽の場合 文字列、数値、数式で指定(例:"不可")

まず、「論理式」は、

判定対象のセル番号→比較演算子→条件値

の順で書きます。

 

例えば、「セルB2は80以上か?」は、

B2>=80

となります。

 

次に、「値が真の場合」は基本的に「条件に合う場合に返す値」を文字列や数値、数式で入れます。

 

例えば「優」と返してほしい時には、

"優"

となります。

 

ちなみに「"」は文字列の時に必要で、数値の時には必要ありません。

 

そして最後の「論理式」と「値が偽の場合」だけは、ちょっと注意が必要です。

 

まず、最後の「論理式」にはどんな時でも必ず「TRUE」と入れます。

 

「これまでの論理式に合わなかったものすべてが真」という意味です。

 

また、「値が偽の場合」には「これまでの論理式すべてに合わなかった場合に返す値」を指定します。

 

この点がIFS関数で迷いやすいところなので、注意しましょう。

 

2-4.論理式は優先順位を意識する

論理式を入れる順番は、優先順位を意識しましょう。

 

一番最初に判定したい条件は何か、二番目は何かということです。IFS関数は、条件に合ったものが出た時点で終わりだからです。

 

なお、範囲などの数値での条件の場合には、「大きい値 ⇒ 小さい値(降順)」または「小さい値 ⇒ 大きい値(昇順)」のどちらかで並べます。

 

例えば80点以上なら「優」、60点以上なら「良」、40点以上なら「可」、それ未満なら「不可」という形にしたい時、イメージは次の通りです。

 

【条件判定のイメージ】

3.IFS関数の動きや読み方、IF関数との違い

続いて、IFS関数の動きやIF関数との違い、ついでにIFS関数の読み方も見てみます。

 

3-1.IFS関数の動きを見る

まずは、例でIFS関数の動きを見てみましょう。

上の表は、4人の国語のテストの結果が入力されたものです。

 

この表をもとに、80点以上を「優」、60点以上を「良」、40点以上を「可」、40点未満を「不可」と判定し、C列に表示させたいとします。

IFS関数を使うと一つの数式で上のように、複数条件の判定とそれに合わせて返す値を変えることができます。

 

3-2.IF関数との違い

IFS関数とIF関数では「条件判定して対応した値を返す」という基本的な動きは同じですが、細かいところで違いがあります。

 

どこが違うのか、確認してみましょう。

 

3-2-1.複数条件の時に一つの関数で済む

違いの一つ目は「複数の条件を指定する時に一つの関数で済む」ことです。

 

例えばIF関数で2つの条件を指定する場合、数式は次のようにIF関数を2つ使います。

=IF(論理式,真の場合,IF(論理式,真の場合,偽の場合))

 

対して、IFS関数は一つで済みます。

 

つまり複数条件指定の場合には、IFS関数の方が分かりやすく簡単ということです。

 

3-2-2.引数に「偽の場合」がない

二つ目の違いは「引数に『偽の場合』がない」ことです。

 

条件に合わない場合に返す値を、IF関数では引数「偽の場合」で指定しますが、IFS関数にはありません。

じゃあ、どうやって条件に合わない場合の値を指定するのかですが、それはこの後解説します。

 

3-3.IFS関数の読み方

念のため、IFS関数の読み方も確認しておきます。

 

IFS関数の読み方は、そのままですが「イフス、イフズ、またはイフエス」と読みます。

 

個人的には「イフス」と呼んでいますが、スタンダードなのかは分からないです。。。

4.IFS関数の使い方

最後に、IFS関数を使って「各条件への一致/不一致で返す値を変える」数式を作ってみます。

 

使う例は、先ほど紹介したテストの結果表です。

 

80点以上なら「優」、60点以上なら「良」、40点以上なら「可」、それ未満なら「不可」を、IFS関数で表示させてみます。

 

以下手順です。

 

(1)結果を表示させたいセルを選択する

 

(2)セルに「=IFS(」と入力後、fxボタンを押す

 

(3)「論理式1」に最優先で判定したい条件を、「値が真の場合1」に一致した場合に返す値を入力する

※ 条件値や返す値が文字列の場合には、「"」で囲みます

 

(4)論理式2と値が真の場合2、論理式3と値が真の場合3へ、同じようにそれぞれ入力する

※ 論理式3以降の入力には、表示させるために右側のスクロールバーを使います

 

(5)最後の「論理式4」には「TRUE」、「値が真の場合4」には、IF関数の「偽の場合」にあたるものを入力する

※ 論理式3以降の入力には、表示させるために右側のスクロールバーを使います

 

(6)OKボタンを押して完了

後は、数式を下のセルにコピーすればOKです。

 

ポイントはやはり「最後の論理式には『TRUE』を入れる」ことと、「最後の値が真の場合には『IF関数における偽の場合の値を入れる』」ことです。

 

これさえ押さえておけば、複数条件の場合にはIF関数よりももっと簡単に数式を作ることができます。

 

以上、参考になれば幸いです。

 


口コミ・評判のいいExcel本の紹介】


IFS関数に関連したページは、次の通りです。。

  • IFS関数 使いこなすためのポイントはこちら
Top