「試験の点数によって合格と不合格を判定したい」
「年齢によって成人か未成年か判定したい」
このような場合に使い勝手の良い関数がIF関数です。IF関数は、エクセルで頻出する関数の一つです。
設定した条件に当てはまる場合とそうでない場合で表示を変更できるため、データの仕分けや特定の条件での計算など、さまざまな場面で利用されます。
実際にIF関数を使って条件判定する方法について紹介しているので、どのように記述するのかについて確認していきましょう。
エクセルのIF関数とは?

エクセルのIF関数とは、複数の条件を判定して当てはまった条件に合わせて値を変化させる関数です。IF関数を使えば、年齢が18歳未満なら未成年と表示して、18歳以上なら成人と表示するというように、条件によって異なる出力ができます。
ほかにも、試験の点数が80点以上なら合格、79点以下なら不合格と表示したり、性別が男性なら会費を2,000円、女性なら1,000円にしたりするなど、IF関数が使えるケースは無数にあります。
そのため、エクセルを使ううえで、IF関数は必ず押さえておきたい関数の一つだといえるでしょう。
エクセルのIF関数の構文
IF関数は以下の構文を使って、条件の判定ができます。
= IF(論理式,値がTRUEの場合,値がFALSEの場合)
上記の構文の説明は以下の表のとおりです。
| 論理式 | 「真(TRUE)」か「偽(FALSE)」を判定できる式 |
| 値がTRUEの場合 | 論理式が正しい場合に表示させる値 |
| 値がFALSEの場合 | 論理式が間違っている場合に表示させる値 |
IFは「もしも」という意味で、「もしもAなら○と表示して、Bなら×と表示する」といった具合に、条件によって出力させる値を変更可能です。そのため、条件が複数あり、複雑なジャッジがしたいケースでIF関数が使われます。
エクセルのIF関数の使い方
エクセルのIF関数は、以下のケースでよく使用されます。
- データを仕分ける
- TRUEの場合だけ記入する
- 3つ以上に条件分岐させる
それぞれの使い方について確認していきましょう。
データを仕分ける
IF関数を使えば条件によって異なる出力ができるため、データを仕分けたいケースで利用可能です。実際に、年齢が18歳以上なら成人と表示し、18歳未満なら未成年と表示する表を作成してみましょう。
- 名前と年齢を記載した表を作成する
- 成人・未成年を表示させたいセルに「=IF(18<=B2,”成人”,”未成年”)」と入力する

- オートフィル機能を使って下までドラッグする
関数を入力したセルの右下にカーソルを合わせると、プラスのアイコンが表示されます。その状態で下にドラッグすることで、関数が自動入力されます。オートフィルを使えば、毎回手入力したりコピーしたりする必要がないので、ぜひ試してみてください。
TRUEの場合だけ記入する
条件がTRUEに当てはまる場合のみ、文字列を表示する方法です。FALSEの場合は空白を返します。TRUEの場合だけ記入する方法を使って、試験の点数が80点以上の場合のみ「合格」と表示する表を作成してみましょう。
- 名前と試験の点数を記載した表を作成する
- 合格の判定を表示させたいセルに「=IF(80<=B2,”合格”,””)」と入力する

- オートフィル機能を使って下までドラッグする
FALSEの判定の箇所を「””」で囲むことで、値がFALSEの場合に空白を返してくれます。
3つ以上に条件分岐させる
IF関数は、関数式を複数組み合わせることで3つ以上の条件分岐も可能です。具体的には、値がFALSEの場合に、さらにIF関数を定義するイメージです。
IF関数を2回使用して、試験の点数が80点以上なら「A」、70点以上なら「B」、それ以外なら「C」のジャッジを出す表を作成してみましょう。
- 名前と試験の点数を記載した表を作成する
- 試験の評価を表示させたいセルに「=IF(C2>=80,”A”,IF(C2>=70,”B”,”C”))」と入力する

- オートフィル機能を使って下までドラッグする
4つ以上の条件分岐がしたいケースでは、上記の式に関数を組み合わせていくことで実現できます。
このようにエクセルの関数を使うと様々なことが出来ます。例えば、エクセルの関数を使ってオリジナルカレンダーの作成も可能です。
以下の記事にて複雑なカレンダーを作る方法からテンプレートを使った手軽な方法も紹介しているので、ぜひあわせてご覧ください。
- Excelを使って転職したい・基本操作を知りたい→Excel基礎セミナー
- ExcelでマクロやVBAを組み業務の負担軽減や効率化を図りたい→Excelマクロ・VBAセミナー
- Excelの資格が欲しい→MOS対策短期集中講座
こちらから自分に合うExcelの講座をお選びください。
エクセルのIF関数を応用する方法
エクセルのIF関数はほかの関数と組み合わせることで、さらに複雑な条件指定が可能です。続いては、AND関数とOR関数を使ってIF関数を応用する方法について確認していきましょう。
また、条件が多いときに使い勝手の良いIFS関数の使い方についても確認していきます。
AND関数
AND関数は、指定した条件のすべてが当てはまっているかを判定する関数です。AND関数の構文は以下のとおりです。
AND(条件1,条件2)
二つの条件が共に当てはまる場合は、TRUEを返し、どちらか一方でも当てはまらない場合はFALSEを返します。
例として、複数ある教科の全てで80点以上の場合に合格とジャッジができる関数を、IF文とAND関数を組み合わせて作成してみましょう。
- 名前と国語・算数の点数を記載した表を作成する
- 合格の判定を表示させたいセルに「=IF(AND(B2>=80,C2>=80),”合格”,””)」と入力する

- オートフィル機能を使って下までドラッグする
OR関数
OR関数は、指定した条件が一つでも当てはまっているかを判定する関数です。OR関数の構文は以下のとおりです。
OR(条件1,条件2)
二つの条件がどちらか一方でも当てはまる場合はTRUEを返し、どちらも当てはまらない場合はFALSEを返します。
例として、複数ある教科の一方が80点以上の場合に合格とジャッジができる関数を、IF文とOR関数を組み合わせて作成してみましょう。
- 名前と国語・算数の点数を記載した表を作成する
- 合格の判定を表示させたいセルに「=IF(OR(B2>=80,C2>=80),”合格”,””)」と入力する

- オートフィル機能を使って下までドラッグする
IFS関数
IFS関数は、複数の条件分岐を簡単な指定でできる関数です。IFS関数の構文を以下のとおりです。
=IFS(式1, 式1がTRUEの場合,式2, 式2がTRUEの場合,FALSEの場合)
IFS関数を使って、試験の点数が90点以上なら「優」、80点以上なら「良」、70点以上なら「可」、それ以下なら「不可」を表示させる表を作成してみましょう。
- 名前と試験の点数を記載した表を作成する
- 評価を表示させたいセルに「=IFS(B2>=90,”優”,B2>=80,”良”,B2>=70,”可”,TRUE,”不可”)」と入力する

- オートフィル機能を使って下までドラッグする
IF関数で条件を増やしていくと、関数が入れ子構造になってしまい、内容がわかりづらくなります。しかし、IFS関数なら、条件が多くなっても一つの関数で完結するため、条件が複数ある場合は、IF関数よりもシンプルに記述が可能です。
シンプルな記述の方が、後からのメンテナンスも簡単なので、複雑な指定をする際はIFS関数を活用してみてください。
しかし、IFS関数は Microsoft 365 またはExcel 2019 以降のバージョンでしか使用できません。Excel 2016以前のバージョンでは使用できない点に注意しましょう。
エクセルのIF関数でよくあるエラーの原因
エクセルでIF関数を使っていると、以下のようなエラーが出る場合があります。
- #VALUE!と表示される
- #NAME?と表示される
- 0と表示される
これらのエラーは、エクセルで関数を使ったことのある方なら、一度は経験があるかもしれません。上記のエラーが出る原因について確認していきましょう。
#VALUE!と表示される
セル内の数式が間違っており、不適切判定されたときに表示されるのが#VALUE!エラーです。#VALUE!エラーが出る場合は、参照しているセルに妥当な数値が入力されているかチェックしましょう。
例えば、数値を入力しなければいけないセルに文字列が入力されていたり、数値が全角で入力されていたりする場合に起こります。
よくあるのが、参照しているセルに「2人」というように数値と文字列が混同しているパターンです。四則演算を使用した数式では、文字列はなしで数値のみを入力するのがルールです。
セルに単位を設定したい場合は、セルの書式設定から指定することで関数に影響は起こらないため、直接文字列を入力せずにセルの書式設定を利用しましょう。
#NAME?と表示される

関数のスペルミスがあると、セルに「#NAME?」と表示されます。そのため、スペルを正しく記述しなおすことで、このエラーは解決可能です。
関数名が合っているかわからない場合は、手入力ではなく数式バーの左にあるfxボタンから関数をサーチして入力するのがおすすめです。
また、関数名が合っていても、エクセルのバージョンが記入した関数に対応していないと同様のエラーが表示されます。fxからサーチしても関数が出ない場合は、使用しているエクセルが対応していない可能性が高いため、関数が対応しているバージョンを一度調べてみるとよいでしょう。
0と表示される
IF関数でセルに0と表示される場合は、関数にTRUEの場合の値とFALSEの場合の値が記載されていないことが原因です。身に覚えのない0が表示される場合は、TRUEの場合の値とFALSEの場合の値を定義し忘れていないか確認しましょう。
エクセルでもっと複雑な関数を学ぶなら
エクセルでは、IF関数以外にもさまざまな関数が用意されており、それらを独学で使いこなせるようになるのは、簡単ではありません。Excel基礎セミナー講習では、エクセルの基本的な操作から、IF関数やSUM関数といった、頻出する関数まで幅広く学習可能です。
また、IF関数よりも一歩進んだ学習をしたい方は、Excelマクロ・VBAセミナーがおすすめです。Excelマクロ・VBAセミナーでは、以下のようなカリキュラムが用意されています。
- マクロ・VBAの基礎知識
- VBAの基礎プログラミング
- 自動集計アプリの作成
- VBAを用いた帳票作成の自動化
ほかにも、豊富な授業でマクロとVBAの習得をサポートします。ぜひこれらの講座もチェックしてみてください。
エクセルのIF関数についてのまとめ
今回は、エクセルのIF関数について紹介しました。IF関数を使えば、複数の条件を判定して最適な値を表示できるため、条件によって処理を変更したい場合におすすめです。
また、AND関数やOR関数などほかの関数を組み合わせることで、より高度な指定もできます。一方で、記入ミスや参照元の入力が不適切であれば、エラーが表示される場合があるため、慣れないうちは苦手意識を持ってしまうかもしれません。
それでも、使いこなせればとても使い勝手の良い関数なので、ぜひ積極的にチャレンジしてみてください。
また、エクセルの強みであるグラフ作成の方法については以下の記事で紹介しています。グラフの種類や編集方法についても紹介しているので、ぜひあわせてご覧ください。
- Excelを使って転職したい・基本操作を知りたい→Excel基礎セミナー
- ExcelでマクロやVBAを組み業務の負担軽減や効率化を図りたい→Excelマクロ・VBAセミナー
- Excelの資格が欲しい→MOS対策短期集中講座
こちらから自分に合うExcelの講座をお選びください。