Excelの
IF関数の使い方を解説

この記事は約5分で読むことができます。

2010-04-21 2018-05-11

  • キーワード
  • Excel
  • 関数
  • IF
  • 条件分岐
  • 判定条件
  • 真の場合
  • TRUE
  • 偽の場合
  • FALSE

エクセル MOS上級を保有し、20年以上ほぼ毎日エクセルを使う「ヒサ」です。 今度の休みにTDLかTDSに連れてってとせがまれ、面倒な案件だなぁと頭を抱えるお父さんが多い日本は平和wと感じる今日この頃... この記事では、エクセルの「IF関数の使い方がよく解らない...」、「条件によって処理を変える方法は?」とお悩みの初心者さんに向けた「IF関数」のやさしい解説です。 更に、セルが空欄か判断する方法など、IF関数の基本から応用まで知ることが出来ます。

1.IF関数を利用する場面

まず"IF"という英単語の意味は「もし~」「もしも~」です。IF関数は「ある条件〇〇が"YES"なら"■■"する。"NO"なら"▲▲"する。」と、「条件を満たす」と「満たさない」場合で処理を変える時に使用します。

IF関数を利用する場面

ご家庭やビジネスシーンとさまざまな場面でこのIF関数は利用できます。このIF関数を「知っている」のと「知らない」のではExcelの使いこなしに大きな差がでますので、必ず覚えてもらいたい関数です。

このページの記事を読みながら実際にExcelで作業すると覚えられると思います。 このページで説明しているサンプルファイルもダウンロードできますので確認してみて下さい。

2.IF関数の例題と完成形を確認

以下の例題と条件を設定してみました。対象者の力量を把握する為にテストを行うことが学校でも、会社でもあると思いますので、この例題にしています。

  • 例題:テスト結果を、自動で「合否判定」する。
  • 条件:「80点以上であれば"合格"」「80点未満であれば"不合格"」と表示する。
IF関数の例題と完成形を確認

3.実際にIF関数を組み立てする

まずは情報を整理します。何事でもそうですが、情報や条件を箇条書きで整理するのがコツです。

  • A列には、テストを受けた人の名前。名前は人を識別する為の情報なので、IF関数には使わない。
  • B列には、テストの採点結果。判定の対象
  • C列には、採点結果に応じた「合否判定」。IF関数で自動で判定させる。
  • 合否判定条件は、80点以上:合格、80点未満:不合格とする。

ここまで整理出来れば、あとはIF関数に当てはめるだけです。まず山田さんの合否判定をしてみます。

実際にIF関数を入力してみましょう

合否判定結果を表示させたいセルC2に以下のIF関数を入力します。(以下の文字がコピペ可能)

=IF(B2>=80,"合格","不合格")

  • 「合格」「不合格」の文字以外は全て半角英数です。関数は基本的に半角英数で入力!
  • 「合格」「不合格」の文字は”(ダブルクォーテーション記号)で括りましょう。

数式を入力し終わったら、キーボードの[Enter]キーを押して関数の入力を確定すると、セルC3に"合格"と表示されます。

あとは、他四人も自動判定させるために、セルC3の計算式をコピーし、セルC4~C7へ貼り付けしましょう。

これでIF関数による点数の自動合否判定は完成です。以下の詳しい説明もご覧ください。

4.IF関数の詳細説明

4-1.IF関数の指定方法

IF関数の基本形は以下のように指定します。

=IF(引数1,引数2,引数3)

  • 引数1=条件
  • 引数2=条件が真(TRUE)の場合の処理A
  • 引数3=条件が偽(FALSE)の場合の処理B

この引数をIF関数を利用する場面の図に当てはめると、以下のような関係になります。

IF関数を利用する場面にIF関数の引数を当てはめる

4-2.IF関数の具体的な指定例

今回は、テストの点数が、80点以上の場合は合格と表示、80未満の場合は不合格と表示する場面を想定してみました。

=IF(B2>=80,"合格",不合格")

引数1にはB2>=80と判定条件を指定します。これはセルB2の値が80以上の場合という意味です。 この”>=”は比較演算子で、条件判定で利用する記号で4-3.比較演算子の種類と意味の表で示す種類があります。

引数2には引数1の判定条件が真の場合の処理として"合格"と表示するよう指定しました。 引数1がB2>=80で、B2が"85"なので「真」となり、引数2の"合格"が表示されます。

引数に文字列を指定する場合は、その文字列を「"」で囲う必要があります。 (ちなみに引数に計算式を指定する場合は「"」で囲む必要はなく、もし囲うと計算式が文字列として認識され計算式が表示されてしまいます。)

引数3には引数1の判定条件が偽の場合の処理として"不合格"と表示するよう指定しました。

4-3.比較演算子の種類と意味

IF関数の条件(引数1)で使用する比較演算子の種類と意味は以下になります。

比較演算子意味
A = BAとBが等しい
A <> BAとBが等しくない
A > BAがBよりも大きい(超える)
A < BAがBよりも小さい(未満)
A >=BAがB以上
A <=BAがB以下

5.IF関数のレベルアップした使い方

5-1.複雑な条件で判断する

今回、引数1の判定条件はひとつでしたが、場合によっては複数条件で判定したいことがあるでしょう。こんな時はAND関数/OR関数/NOT関数を利用することで、もっと複雑な条件判断が可能です。

AND/OR/NOTを図に表すと、以下の様になります。これは関係を図式化した「演算子」「ベン図」「真理値表」と呼ばれるものです。

ベン図

例えば

=IF(AND(A1=10,B2=20),C1+D2,E1-F1)

この式の意味は、セルA1が10でありかつセルB2が20である場合(ともに真であるなら)引数2のC1+D2の計算結果を表示する。 もし、どちらか一方が真でないなら引数3のE1-F1の計算結果を表示する。

=IF(OR(A1<>10,B2=C3),"エクセル","ワード")

上の式の意味は、セルA1が10である又はセルB2とセルC3が等しい場合(どちらか一方が真であるなら)"エクセル"と表示する。 もし、どちらも偽であるなら"ワード"と表示する。

5-2.条件判断後の選択肢を複数用意する

IF関数の引数2と引数3には式が指定できるので、さらにここへIF関数を指定することで、2分岐以上の条件判定をさせることも可能となります(最大7階層まで)。

=IF(条件1,処理A,IF(条件2,処理B,IF(条件3,処理C,処理D)))

条件判断後の選択肢を複数用意する

しかしあまり階層を深くしてしまうと訳がわからなくなりますので、最大でも2階層までに抑えておいたほうが無難です。 もっと条件を分岐させたいなら、複数のセルを利用して複数の分岐を作るとよいと思います。

5-3.セルが空欄か判断する

判定条件に空欄を指定することができます。セルA1が空欄かどうかを調べる場合には以下のように指定します。「""」ダブルクォーテーションをスペースをあけずに2個並べると空欄の意味になります

=IF(A1="","セルに何もない","セルに何かある")

同じカテゴリの記事