Excel

ExcelのIF関数とは?使い方やIFの入れ子の応用も初心者にわかりやすく

Excel
この記事は約5分で読めます。

表計算ソフトのExcelをこれから始めようと思っている方向けにIF関数についてご紹介します。
IF関数を使えるようになるだけで、エクセルを使いこなしたも同然です。
それぐらいIF関数はよく使いますし、条件によって処理を分岐できるためマスターするだけで今までよりエクセルが活用できるようになります。

↓↓↓動画で「ExcelのIF関数とは?」を学びたい方は以下から↓↓↓

チャンネル登録やいいねで応援をお願いします😄

エクセルのIF関数とは?

IF関数とは、英語の授業でIF文法「もし・・・ならば、〇〇をする」と学んだかと思いますが、設定した条件に応じて、処理を施す関数のことです。

例えば、「もし数値が100ならば、セルに”満点”をつける」、「もし都道府県が東京ならば、セルに●をつける」とようなことができます。

テストの成績をIF関数を用いて判定する

先生になったつもりで、生徒のテストの点数をIF関数を使って、C列の判定にE列の合格点を利用して判定結果を出してみましょう。

「A列:名前、B列:点数」が入っているので、E2の合格点60を使ってC列に各判定を入れていきます。

まず、点数に応じた条件式をみてみましょう。

テストの点数が100より大きい場合は、入力ミスになるため、評価は「エラー」を返してあげる必要があり、条件式としては「点数 >100」になります。
テストの点数が60〜100の場合は、合格範囲内になるため、評価は「合格」を返してあげて、条件式としては「60>= 点数 <=100」になります。
テストの点数が60より小さい場合は、不合格になるため、評価は「不合格」を返してあげて、条件式としては「点数 <60」になります。

こちらを頭に入れた上で、ゴリラさんの判定をセルC2に入れる際は以下の数式を入れることになります。
=IF(B2>=$F$2,”合格”,”不合格”)

ラッコさんの判定をセルC3に入れる際は以下の数式になります。
=IF(B3>=$F$2,”合格”,”不合格”)

先程の数式と同じで、点数のセルだけ変更すればOKです。これと同じようにコアラさん、ラクダさんも以下のように入れていきます。

=IF(B4>=$F$2,”合格”,”不合格”)
=IF(B5>=$F$2,”合格”,”不合格”)

もう4つ同じことをやれば、IF関数がお分かりになったと思います。
しかし、ラクダさんは点数が110点になるのに、この数式だけでは「合格」の判定になっています。
101点以上は「エラー」を返してあげなければいけないため、ちょっとした応用としてIF関数の入れ子(ネスト)を使って解消してきます。

IF関数の入れ子(ネスト)でのやり方

IF関数を1つだけ使っただけでは、1つの条件しか設定することができないですが、IF関数の中にIF関数を入れるように設定することで複数条件の設定が可能となります。
今回の場合を例にすると、「もし数値が60〜100ならば、”合格”の判定をして、60より下の場合は不合格で、それ以外をエラーを返す」という形です。

ではこれをIF関数の入れ子とAND関数を使ったやり方とIF関数の入れ子だけで行う2つのやり方をお伝えします。

IF関数の入れ子とAND関数を使ったやり方

AND関数は、「AとB」に当てはまるものというように、条件の両方に当てはまる場合、TRUEを返して、当てはまらない場合はFALSEを返します。

例えば、Aさんが、3科目(数学、国語、英語)の点数がそれぞれあり、3科目とも90点だったとした場合、3科目全て90点以上を”TRUE”と返したい場合
、=AND(数学>=90,国語>=90,英語>=90)という感じでAND関数を使って判断することができます。今回はTRUEを返しましたが、このAND関数とIF関数を組み合わせることでより効果を発揮します。

60〜100点を合格としたいので、AND関数でAND(B5>=60,B5<=100)と作ればいいことがわかります。これをIF文の条件に入れて、その結果がTRUEの場合は”合格”を返すということなので、=IF(AND(B5>=60,B5<=100),”合格” と入れればいいことがわかります。これだけでは、60〜100点の場合は合格を返すということにしかなっていないため、60より小さい場合は”不合格”で、100より大きい場合は、”エラー”を返す条件式を作らなければいけません。

そこでIF関数の入れ子の登場で、以下のような条件式になります。

=IF(AND(B5>=60,B5<=100),”合格”,IF(B5<60,”不合格”,”エラー”))

こちらのように60〜100点じゃなかったらという形で、中に入っている(入れ子)IF関数の方に順番が移ります。そしてこのIF関数は、最初の条件に60より小さい場合は”不合格”を返す式になっており、もし60より小さくなかった場合は、”エラー”を返すという流れになりました。

これでどんな数字がきてもしっかりと判定をしてくれることになりました。

このAND関数を組み合わせると非常に簡単になりますが、今回の場合はAND関数を使わずにIF関数の入れ子だけでもできます。

IF関数の入れ子を使ったやり方

IF関数の入れ子を使う場合、今までは違った順番で条件式を作ってあげる必要があります。通常であれば、”合格”、”不合格”、”エラー”の順番でしたくなると思いますが、”エラー”からいくと綺麗な形でできます。
まず最初に=IF(B5>100,”エラー”,で100より大きい場合は、”エラー”を返すという条件式にして、もし100より大きいに当てはまらない場合、IF関数の入れ子の条件に移ります。2番目のIF関数ではIF(B5>=60,”合格”,”不合格”))のように、60以上は”合格”としてあげて、もし60以上でない場合は、全て不合格になるという条件です。

=IF(B5>100,”エラー”,IF(B5>=60,”合格”,”不合格”))

このように条件の順番によって変えることもできますので、是非上手に活用してみてください。

ExcelのIF関数とは?のまとめ

EXCELのIF関数を覚えるとエクセルマスターに一歩近づくことができます。IF関数単体で使うこともあるのですが、最も多いのは他の関数と一緒に使う方法です。

例えば、LEN関数との組み合わせの場合は、もし文字数が10文字以上なら「合格」と表示させるといったようなことも可能です。

このようにExcelをより使いこなそうと思った場合には、IF関数との組み合わせを多用することになるので、是非IF関数の構文を頭に入れて、今後のエクセルライフを楽しんでください。

コメント