ExcelのIF関数とは、「もし〇〇なら~」という条件分岐を実現するための関数です。
この記事では、IF関数の基本的な使い方から、AND・OR・入れ子を使った2つ・3つ以上の複数条件の処理方法まで、初心者にもわかりやすく解説します。
IF関数とは?
ExcelのIF(イフ)関数とは、「もし〇〇だったら△△、そうじゃなかったら□□」というように、条件によって結果を変えるための関数です。
「IF」は英語の「もし~なら(if)」という意味から来ています。
たとえば、テストの点数が80点以上なら「合格」、それより低ければ「不合格」と表示したいときに使うことができます。
IF関数の基本の書き方
まずは基本のIF関数をご紹介します。IF関数の構成は以下の通りです。
=IF(論理式, 値が真の場合, 値が偽の場合)
IF関数の引数(関数に渡す値や設定)を詳しく見る
- 論理式: 条件を判定する部分。比較演算子(>=、=、<など)を使って条件を指定する。
- 値が真の場合: 条件が真(TRUE)の場合に返す値。
- 値が偽の場合: 条件が偽(FALSE)の場合に返す値。
IF関数は「もし~ならば」という条件分岐を行う関数です。指定した条件が正しい(TRUE)場合と正しくない(FALSE)場合で、返す値を切り替えることができます。
▼(例)C2のセルに、B2のセルの点数が80点以上なら「合格」、それ未満なら「不合格」と表示したい場合。

各引数(関数に渡す値や設定)を詳しく見る
- B2>=80: 判定条件(論理式)。B2セルの値が80以上かどうかを評価する。
- "合格": 条件が合っている場合に返す値。B2セルの値が80点以上であれば、「合格」と表示される。
- "不合格": 条件が合っていない場合に返す値。B2セルの値が79点以下であれば、「不合格」と表示される。
このように、IF関数を使うとセルの値に応じて表示内容を自動で変えることができます。
テストの点数から「合格」か「不合格」を判定したり、在庫数に応じて「要補充」と表示したりと、日常的な業務やデータ管理に幅広く活用できます。
論理式で「ある条件が正しいか」を判断するために使うのが比較演算子です。代表的なものは以下の表を参考にしてください。
| 演算子 | 具体的な使い方 | 説明 |
|---|---|---|
| = | =IF(A1=B1,"一致","不一致") | A1とB1が等しいかを判定 |
| <> | =IF(A1<>B1,"違う","同じ") | A1とB1が異なるかを判定 |
| > | =IF(A1>B1,"合格","不合格") | A1がB1より大きいかを判定 |
| < | =IF(A1<B1,"在庫少","在庫十分") | A1がB1より小さいかを判定 |
| >= | =IF(A1>=B1,"達成","未達") | A1がB1以上かを判定 |
| <= | =IF(A1<=B1,"予算内","超過") | A1がB1以下かを判定 |
【Excel】基本のIF関数の使い方!
IF関数で複数の条件を設定する方法
IF関数は、条件に応じて表示内容を変えることができますが、1つの条件だけでなく、2つや3つといった複数の条件を組み合わせて使うこともできます。
複数の条件を使えるようになると、点数や提出状況など、いくつかの情報をまとめて判断できるようになります。
「すべての条件がそろっていればOK」や「どれか1つでも当てはまればOK」といった、細かいルールを自由に作れるのがポイントです。
すべての条件を満たすとき(AND関数)
AND関数は「すべての条件が正しいときだけOKになる」関数です。
IF関数と一緒に使うと、「2つの条件がどちらも当てはまるときだけ○○と表示する」ことができます。
たとえば、点数が80点以上で、提出物が「あり」のときに「合格」と表示したい場合は、次のように書きます。
どれか1つでも当てはまるとき(OR関数)
OR関数は「どれか1つでも条件が正しければOKになる」関数です。
IF関数と組み合わせると、「どちらかの条件が当てはまれば○○と表示する」ことができます。
たとえば、点数が80点以上か、提出物が「あり」のどちらかで「合格」としたい場合は、次のように書きます。
AND関数とOR関数を組み合わせて複雑な条件を判断する
AND関数とOR関数を組み合わせると、もっと複雑な条件を作ることができます。
たとえば、「点数が80点以上で、提出物が『あり』または『理由あり』」という条件を作ることもできます。
条件が3つ以上あるときの書き方(IFの入れ子)
IF関数の中にさらにIF関数の計算式を入れることを「入れ子(ネスト)」といいます。これを使えば、3つ以上の条件に応じて表示を変えることができます。
たとえば、点数が80点以上なら「優秀」、60点以上なら「合格」、それより下なら「不合格」と表示したい場合は、次のように書きます。
入れ子のIF関数を見やすく書くコツ
点数に応じて次のように細かく評価したいとします。
90点以上 → ◎
80点以上 → ○
70点以上 → △
60点以上 → ▲
それ未満 → ×
この場合、IF関数を入れ子にして次のように書きます。
入れ子のイメージを図で見てみましょう。IF関数の入れ子は、親の中に子、その中に孫…というように、関数の中に関数が入っているイメージです。

IF関数を入れ子にすると、1つの式の中に複数のIFが入ってきて、どうしても長くなります。そんなときは、改行して階層ごとに整理すると、とても見やすくなります。
※ 例の右上にある「関数をコピー」ボタンを使って数式をコピーし、Excelのセルに貼り付けると改行されたままの形で使えます。うまく反映されない場合は、セルをダブルクリックしてから貼り付けてみてください。
このように改行することで、どのIFがどの中に入っているかが一目でわかります。特に、条件が多いときや修正したいときにとても便利です。
Excelの数式は、改行したい位置でAltキー+Enterキーを押すと途中で改行できます。
IF関数のよく使う実用例
IF関数の基本がわかったら、次はよくある使い方のパターンを見てみましょう。
「空白だったら何もしない」「特定の言葉が入っていたら表示する」など、実際によく使う例をまとめました。
| やりたいこと | 数式の例 | 説明 |
|---|---|---|
| セルが空っぽ(空白)なら、何も表示しない | =IF(A1="","",A1) | A1が空なら空白、そうでなければA1の中身を表示 |
| 「文字」という言葉が入っていたら「あり」と表示 | =IF(ISNUMBER(SEARCH("文字",A1)),"あり","なし") | A1に「文字」が含まれているかを調べる |
| 0だったら何も表示しない | =IF(A1=0,"",A1) | 0のときは空白にして、見た目をスッキリさせる |
| データが見つからなかったら空白にする(IFNA) | =IFNA(VLOOKUP(A1,D1:E10,2,FALSE),"") | VLOOKUP関数で見つからなかったとき(#N/A)に空白を表示 |
| なんらかのエラーが出たら空白にする(IFERROR) | =IFERROR(VLOOKUP(A1,D1:E10,2,FALSE),"") | どんなエラーでも空白にする(#N/A 以外も含む) |
文字は「"」で囲みましょう(数字やセルは不要)。
カンマやカッコのミスはエラーのもと。記号の位置に注意!
IFを重ねたら、その分カッコも閉じるのを忘れずに。
IF関数でよくある質問とその解決法
IF関数がうまく動かないときによくある疑問を、3つの質問にまとめて解説します。
Q. IF関数で「FALSE」と表示されるのはなぜ?
- A. 「そうじゃないとき」の結果を書いていないと、自動的にFALSEが表示されます。
- たとえば
=IF(A1="OK","合格")のように書くと、A1が「OK」じゃないときに「FALSE」と出ます。
対処法:=IF(A1="OK","合格","")のように、そうでないときの結果も書きましょう。
Q. IF関数を重ねるとカッコがぐちゃぐちゃになります…
- A. 入れ子にした分だけカッコを閉じる必要があります。改行して書くと見やすくなります。
- 入れ子のIF関数を見やすく書くコツで改行方法を詳しく見る
また、Excel 2019以降のバージョンであれば、IFS関数を使うことで、よりスッキリとした書き方が可能です。
Q. セルが空白なのにIF関数の条件が合いません…
- A. セルが「見た目は空白」でも、実はスペースや数式が入っていることがあります。
- たとえば
=IF(A1="","空白","入力あり")と書いても、A1にスペースだけが入っていると「入力あり」と判定されます。
対処法:=IF(TRIM(A1)="","空白","入力あり")のように、余分なスペースを取り除いてから判定しましょう。
まとめ:IF関数を使いこなして作業をもっとラクに!
IF関数は、Excelでとてもよく使う機能のひとつです。「もし〇〇なら~」という考え方を身につければ、日々の業務やデータ整理がより効率的になります。
今回ご紹介した基本の使い方に加えて、AND関数・OR関数・入れ子(ネスト)といった応用まで理解すれば、複雑な条件も柔軟に処理できます。
最初は難しく感じるかもしれませんが、実際に手を動かして試していくことで、自然と理解が深まり、実務でも活用できるでしょう。
