
IF関数を何重にもネストして、数式がぐちゃぐちゃ…

どこで括弧が閉じるのか分からない!

ネストしてしまうのは特によくあるよね。
すもりーマンの悩みを解決するのが、IFS関数です!
この記事では、
を、解説していきます。
この記事を読めば、あなたのExcel作業がもっとスムーズになること間違いなし!
ぜひ最後まで読んで、IFS関数をマスターし、実務でバリバリ活用してくださいね。
IFS関数ってどんなときに使うの?IF関数との違いも解説!

まず、「IFS関数って、そもそも何?」という疑問から解消していきましょう。
IFS関数とは?
IFS関数は、
Excelで複数の条件を順番に評価し、最初に真(TRUE)になった条件に対応する値を返す関数です。

これだけ聞くと、IF関数でもできるんじゃないの?と思っちゃうけど。。

すもりーマンの言う通りだよ!
でもね、IFS関数にはIF関数にはない大きなメリットがあるんだよ。
IF関数との違い:ネストの呪縛から解放!
従来のIF関数は、1つの条件に対して「真の場合」と「偽の場合」の2つの選択肢しか指定できません。

そのため、3つ以上の条件を分岐させたい場合は、IF関数の中にさらにIF関数を記述する「ネスト(入れ子)」という方法を使う必要がありましたよね!
たとえば、点数に応じて「優」「良」「可」「不可」を判定する場合、IF関数だとこんなに複雑になります。
=IF(B2>=80,"優",IF(B2>=70,"良",IF(B2>=60,"可","不可")))

なんだか、数式を見ただけで頭が痛くなってきたよ

括弧の数も多くて、どこがどの条件に対応しているのか、一目で判断するのは難しいよね。

IF関数についてもっと詳しく知りたい方は、以下の記事も参考にしてみてください!

一方で、IFS関数を使うと、同じ処理がこんなにスッキリするよ!
=IFS(B2>=80,"優",B2>=70,"良",B2>=60,"可",TRUE,"不可")
どうでしょう?IFS関数は「条件、値、条件、値…」と、条件と返す値のセットを羅列していく形式なので、非常に見やすく、直感的に理解しやすいのが特徴です。
ネストの必要がないため、数式の作成も修正も格段に楽になります。

ほんとだ!
これなら数式を見て直感的に判断できるね!
特徴 | IF関数 | IFS関数 |
条件数 | 1つの条件に対して真・偽の2択 | 複数の条件を順次評価(最大127個) |
構文 | =IF(条件, 真の場合, 偽の場合) | =IFS(条件1, 値1, 条件2, 値2, ...) |
可読性 | ネストすると複雑で分かりにくい | 条件と値がペアなのでシンプルで分かりやすい |
対応Ver | 全てのExcelバージョンに対応 | Excel 2019以降、Microsoft 365(一部2016も利用可) |
IFS関数の基本的な使い方をマスターしよう!

ここからは、実際にIFS関数を使ってみよう!
基本的な構文から具体的な例まで、ステップバイステップで解説します。
IFS関数の構文
IFS関数の基本的な構文は以下の通りです。
=IFS(論理式1, 真の場合1, [論理式2, 真の場合2], ..., [論理式n, 真の場合n])
- 論理式1: 最初に評価したい条件式を指定します。この条件がTRUE(真)であれば、
真の場合1
が返されます。 - 真の場合1:
論理式1
がTRUEだった場合に、セルに表示したい値や計算式を指定します。 - 論理式2, 真の場合2, …:
論理式1
がFALSE(偽)だった場合、次に評価する条件と、その条件がTRUEだった場合に返す値をペアで指定します。これを必要なだけ繰り返します。

ポイント:条件の評価は左から順番に行われるということです。
途中でTRUEになった条件があれば、それ以降の条件は評価されずに処理が終了します。
具体例でIFS関数を使ってみよう!
点数に応じた成績評価を例に、IFS関数の使い方を詳しく見ていきましょう。

目標:点数(B列)に応じて、C列に以下の成績を自動で表示させたい。
ステップ1:セルC2に数式を入力する

佐藤太郎さんの成績を計算するために、セルC2を選択し、以下の数式を入力します。
=IFS(B2>=80,"優",B2>=70,"良",B2>=60,"可",TRUE,"不可")
ステップ2:数式の内容を理解する

入力した数式を分解して見ていきましょう。
B2>=80,"優"
:もしB2の値が80以上なら「優」を返す。- 佐藤さんの点数85点は80以上なので、この条件がTRUEになり、「優」が返されます。これ以降の条件は評価されません。
B2>=70,"良"
:もしB2の値が70以上なら「良」を返す。(最初の条件がFALSEだった場合のみ評価される)B2>=60,"可"
:もしB2の値が60以上なら「可」を返す。(最初の2つの条件がFALSEだった場合のみ評価される)TRUE,"不可"
:上記全ての条件がFALSEだった場合、「不可」を返す。
ここで注目してほしいのが、最後のTRUE,"不可"
です。

IFS関数では、IF関数のように「条件が全て偽だった場合」を直接指定する引数がありません。そのため、最後に必ず真となる条件(TRUE
)を指定し、それが「それまでの条件に当てはまらなかった場合のデフォルト値」となるようにします。
ステップ3:結果を確認し、数式をオートフィルする

数式を入力し、Enterキーを押すと、セルC2に「優」と表示されます。
次に、C2セルの右下にあるフィルハンドル(小さい四角)をダブルクリックするか、C6セルまでドラッグして数式をコピーします。
すると、以下のようにそれぞれの点数に応じた成績が自動で表示されます。


これで、複雑な条件分岐もIFS関数で簡単に処理できた!
IFS関数でエラーが出たときの対処法

IFS関数は便利ですが、使い方を間違えるとエラーが表示されてしまうことがあります。ここでは、よくあるエラーとその対処法を解説します。
#N/Aエラー:条件に合致するものがない場合

IFS関数で最もよく遭遇するエラーが「#N/A」です。
これは、指定した論理式のどれもがTRUEにならなかった場合に発生します。
例: 点数に応じた成績評価の数式で、最後のTRUE,"不可"
を忘れてしまった場合。
=IFS(B2>=80,"優",B2>=70,"良",B2>=60,"可")

この数式だと、B2セルが58点(高橋健太さん)の場合、どの条件も満たさないため「#N/A」エラーが表示されてしまうってことか。。

その通りだよ!

対処法:最後の条件にTRUE
を指定する

IFS関数は、いずれかの条件がTRUEになるまで処理を続けます。そのため、全ての条件に当てはまらなかった場合の「その他」や「デフォルト」の値を返すには、最後の論理式に必ずTRUE
を指定してください。
=IFS(B2>=80,"優",B2>=70,"良",B2>=60,"可",TRUE,"不可")
こうすることで、
どの条件にも合致しなかった場合に「不可」が返され、エラーは解消されます。
#VALUE!エラー:引数の不足または型が不一致

#VALUE!
エラーは、関数の引数が不足している場合や、引数のデータ型が想定と異なる場合に発生することがあります。
例1:引数がペアになっていない
論理式と返す値がペアになっておらず、どちらか一方だけが記述されている場合。
=IFS(B2>=80,"優",B2>=70,"良",B2>=60)

この例では、最後のB2>=60
の後に返す値が指定されていないからエラーになるんだね

その通りだよ!
対処法:論理式と値は必ずセットで記述する

IFS関数は、「論理式, 値, 論理式, 値…」というように、必ずペアで記述する必要があります。一つでも欠けているとエラーになりますので、確認しましょう。
#NAME?エラー:関数のスペルミスまたは未対応バージョン

#NAME?
エラーは、関数のスペルが間違っている場合や、使用しているExcelのバージョンがIFS関数に対応していない場合に発生します。
例1:関数のスペルミス
=IFR(B2>=80,"優",...)
のように、IFS
をIFR
と間違えた場合など。
対処法:関数のスペルを確認する

数式バーで関数名を確認し、正しくIFS
と入力されているか確認しましょう。
例2:Excelのバージョンが古い

IFS関数は、主にExcel 2019以降、およびMicrosoft 365のExcelで利用可能です。Excel 2016の一部のバージョンでも利用できる場合がありますが、それ以前のバージョンでは利用できません。
対処法:Excelのバージョンを確認する

もしExcel 2016以前のバージョンを使用している場合は、IFS関数が使えない可能性があるのか!その場合は、IF関数のネストで対応するか、Excelのバージョンアップを検討してみるね!
その他のエラーと確認ポイント
まとめ:IFS関数を使いこなしてExcel作業を効率化しよう!

この記事では、ExcelのIFS関数の基本的な使い方から、IF関数との違い、そしてエラーが出たときの対処法までを詳しく解説しました。
IFS関数を使いこなせるようになれば、


最初は少し戸惑うかもしれませんが、何度か実際に使ってみることで、きっとすぐに慣れるはずです。
ぜひ、今日からExcel作業にIFS関数を取り入れて、効率アップを目指してくださいね!

みんなで頑張ろう!
コメント