エクセルIF関数の使い方を完全攻略!基本構文から複数条件・エラー対処まで徹底解説
Excelで点数から合否を判定したり、売上金額に応じて評価を表示したりするときに役立つのが、IF関数です。条件に合う場合と合わない場合で表示する結果を自動的に切り替えられるため、手作業による判定や入力ミスを減らし、日々の集計業務を効率化できます。
2026年にExcelを使い始めた初心者も、基本の書式さえ理解すれば、AND・OR・NOT関数による複数条件の指定や、IF関数の入れ子による段階的な評価まで応用できます。Microsoft サポートの公式解説をはじめ、mouse LABOやExcelの森で扱われている実用例も踏まえながら、具体的な数式、空白セルの判定、エラーの修正方法まで順を追って解説します。
📌 【この記事の重要ポイントまとめ】
- 要点1:IF関数は、条件がTRUEなら指定した値を、FALSEなら別の値を返す関数。基本構文を覚えれば、合否判定や売上評価を自動化できる。
- 要点2:AND・OR・NOT関数を組み合わせると、複数の条件をまとめて判定できる。3段階以上の評価にはIF関数の入れ子も使える。
- 要点3:文字列の引用符、空白セルの扱い、かっこの数、比較演算子を確認することが、数式のエラーや誤判定を防ぐ近道になる。
【基本を理解】エクセルのIF関数とは?構文と書式を初心者向けに解説
IF関数は、指定した条件が成立するかどうかを判定し、その結果に応じて異なる値を返す論理関数です。「もし80点以上なら合格、そうでなければ不合格」というように、条件によって処理を分けたい場面で使います。
たとえば、B2セルにテストの点数が入力されている場合、80点以上なら「合格」、80点未満なら「不合格」と表示する数式は次のとおりです。
=IF(B2>=80,"合格","不合格")
この数式をC2セルに入力すると、B2が80以上の場合は「合格」、79以下の場合は「不合格」と表示されます。B2の点数を変更すれば、C2の判定結果も自動的に更新されます。
IF関数の基本構文と3つの引数
Microsoft サポートが示すIF関数の基本書式は、次のとおりです。
=IF(論理式,真の場合の値,偽の場合の値)
引数とは、関数に渡す条件や値のことです。IF関数では、次の3つを順番に指定します。
- 論理式:条件が成立するかどうかを判定する式。例はB2>=80。
- 真の場合の値:条件がTRUEと判定されたときに返す値。例は「合格」。
- 偽の場合の値:条件がFALSEと判定されたときに返す値。例は「不合格」。
3つ目の「偽の場合の値」は省略できます。ただし、省略した場合は条件が成立しないときにFALSEが返されます。空欄にしたい場合は、=IF(B2>=80,"合格","")のように、空の文字列を表す""を指定します。
論理式の書き方で使う比較演算子
IF関数の条件式では、比較演算子を使って数値や文字列を比較します。特に間違えやすいのが、「以上」「以下」と「より大きい」「より小さい」の違いです。
=:等しい<>:等しくない>:より大きい<:より小さい>=:以上<=:以下
たとえば、80点ちょうども合格に含めるならB2>=80と指定します。B2>80では80点ちょうどが条件から外れるため、判定結果が変わります。
また、論理式の結果はTRUEまたはFALSEです。IF関数はこの判定結果を受け取って表示内容を切り替えるのであり、条件式そのものに「合格」などの表示文字列を入れる必要はありません。

【具体例で理解】IF関数の使い方と文字列・数値・空白の判定方法
IF関数を実務で使う際は、条件式に何を指定するかがポイントです。数値の大小を比較する場合と、文字列が一致するかを調べる場合では、数式の書き方が異なります。
数値を条件にする場合
売上金額が10万円以上なら「達成」、それ未満なら「未達」と表示する例です。A2セルに売上金額が入っているとします。
=IF(A2>=100000,"達成","未達")
この数式では、100000という数値をそのまま指定しています。数値を条件として比較する場合、通常は数値にダブルクォーテーションを付けません。
文字列を条件にする場合
申請状況が「承認」なら「処理可能」、それ以外なら「確認が必要」と表示したい場合は、次のように記述します。
=IF(B2="承認","処理可能","確認が必要")
文字列の「承認」はダブルクォーテーションで囲みます。B2=承認のように引用符を省くと、Excelが承認という名前を定義済みの名前などとして解釈し、意図した数式にならないことがあります。
一方、セルの値が数値なのか、数字に見える文字列なのかにも注意が必要です。たとえば、セルに数値の100が入っている場合と、文字列としての「100」が保存されている場合では、比較や計算の結果が期待と異なることがあります。数値として集計したいデータは、セルの表示形式だけでなく、実際のデータ型も確認しましょう。
空白セルを判定する方法
未入力のセルを見つけたいときは、空白判定をIF関数に組み合わせます。A2が空欄なら「未入力」、値が入っていれば「入力済み」と表示する数式は次のとおりです。
=IF(A2="","未入力","入力済み")
この方法は、実際に空のセルだけでなく、数式によって空文字列""が返されているセルも空欄として判定します。
これに対し、ISBLANK(A2)は、セルが本当に空であるかどうかを調べる関数です。A2に数式が入力され、その計算結果が空文字列になっている場合、ISBLANKはFALSEを返します。見た目が空欄でも、セルの中身が空とは限らない点を覚えておきましょう。
実務では、未入力のデータを検出したいのか、数式の結果が空欄のセルも未入力として扱いたいのかによって、判定方法を使い分けることが大切です。
【複数条件に対応】IF関数とAND・OR・NOT関数の組み合わせ方
IF関数の条件は、基本的に1つの論理式です。ただし、その論理式の部分にAND関数やOR関数、NOT関数を入れることで、2つ以上の条件をまとめて判定できます。
Microsoft サポートの公式解説でも、これらの関数をIF関数と組み合わせる方法が紹介されています。複数条件の指定では、「すべての条件を満たす必要があるのか」「どれか1つを満たせばよいのか」を先に整理すると、数式を組み立てやすくなります。
AND関数:すべての条件を満たした場合
AND関数は、指定した条件がすべてTRUEの場合にTRUEを返します。たとえば、テストが80点以上で、提出物の状況も「提出済み」の場合だけ「合格」とするなら、次の数式です。
=IF(AND(A2>=80,B2="提出済み"),"合格","不合格")
この式では、A2が80以上であることと、B2が「提出済み」であることの両方が必要です。どちらか一方でも条件を満たさなければ、「不合格」と表示されます。
OR関数:いずれかの条件を満たした場合
OR関数は、指定した条件のうち1つ以上がTRUEならTRUEを返します。たとえば、対象地域が東京または大阪なら「対象」と表示したい場合は、次のように書きます。
=IF(OR(A2="東京",A2="大阪"),"対象","対象外")
東京と大阪のどちらかに一致すれば条件を満たします。両方に一致する必要はありません。複数の部署名、商品区分、申請理由などから該当するものを判定するときにも便利です。
NOT関数:条件を反転させる場合
NOT関数は、TRUEをFALSEに、FALSEをTRUEに反転させる関数です。たとえば、A2が「停止」ではない場合に「稼働」と表示するなら、次の数式を使います。
=IF(NOT(A2="停止"),"稼働","停止")
ただし、この例ではA2<>"停止"と書いても同じ条件を表現できます。NOT関数は、条件式を反転させたいときに役立ちますが、単純な不一致の判定なら比較演算子のほうが読みやすいケースもあります。
AND・OR・NOTの違いと使い分け
| 関数 | 判定の考え方 | 数式の例 | 向いている用途 |
|---|---|---|---|
| AND | すべての条件を満たす | AND(A2>=80,B2="提出済み") | 点数と提出状況の両方を確認する |
| OR | 1つ以上の条件を満たす | OR(A2="東京",A2="大阪") | 複数の対象地域から該当するものを判定する |
| NOT | 条件の真偽を反転する | NOT(A2="停止") | 特定の状態ではないことを確認する |
AND関数とOR関数は、Microsoft サポートの説明によると、それぞれ最大255個の条件を受け取れます。一方、NOT関数が受け取る条件は1つです。ただし、指定できる条件の数が多くても、複雑な数式ほど正しく組み立てたり、後から修正したりすることが難しくなります。
実務で3つ以上の条件を扱う場合は、必要に応じてANDとORを組み合わせます。たとえば、80点以上で、かつ提出物が「提出済み」または「免除」の場合に合格とするなら、次のように記述できます。
=IF(AND(A2>=80,OR(B2="提出済み",B2="免除")),"合格","不合格")
この数式は、「点数が80点以上」という条件に加え、提出状況が2つの候補のいずれかに該当することを求めています。ANDとORの役割を分けて考えると、複数条件でも混乱しにくくなります。

【3つ以上の条件】IF関数の入れ子・ネストで段階評価する方法
合格・不合格のように結果が2種類だけなら、基本のIF関数で対応できます。しかし、「80点以上なら優秀、60点以上なら合格、それ未満なら不合格」のように、結果を3段階以上に分けたい場合は、IF関数の中に別のIF関数を入れる方法が使えます。これを入れ子、またはネストと呼びます。
IF関数を2つ使って3段階に分類する
A2セルに点数が入力されている場合、次の数式で3段階の評価を表示できます。
=IF(A2>=80,"優秀",IF(A2>=60,"合格","不合格"))
最初にA2が80以上かどうかを判定し、条件を満たせば「優秀」と表示します。80未満の場合は内側のIF関数に進み、60以上なら「合格」、それ以外なら「不合格」と判定します。
- 80点以上:優秀
- 60点以上80点未満:合格
- 60点未満:不合格
このように、最初の条件に当てはまらなかった場合に次の条件を調べる構造が、入れ子の基本です。条件を上から順番に確認するため、点数の高い基準から並べると、判定の流れを理解しやすくなります。
3つ・4つ以上の条件に対応するには?
さらに細かく評価したい場合は、IF関数を追加します。たとえば、90点以上を「S」、80点以上を「A」、70点以上を「B」、60点以上を「C」、それ未満を「D」とする数式は次のとおりです。
=IF(A2>=90,"S",IF(A2>=80,"A",IF(A2>=70,"B",IF(A2>=60,"C","D"))))
IF関数を追加するたびに、対応する閉じかっこも必要になります。数式が長くなった場合は、かっこの対応関係を確認し、各条件と結果を紙やメモに書き出してから組み立てると、ミスを防ぎやすくなります。
入れ子を増やしすぎないための判断基準
Microsoft サポートは、複雑な入れ子の数式について、作成・テスト・保守が難しくなる点を指摘しています。条件が増えたときは、IF関数を際限なく追加するのではなく、別の方法も検討しましょう。
対応するExcelのバージョンが十分に新しい場合は、最初にTRUEとなった条件に対応する値を返すIFS関数も選択肢です。先ほどの5段階評価なら、次のように書けます。
=IFS(A2>=90,"S",A2>=80,"A",A2>=70,"B",A2>=60,"C",TRUE,"D")
IFS関数では条件と結果を並べて書けるため、入れ子のかっこが増えません。ただし、利用環境によって対応状況が異なるため、古いExcelとのファイル共有がある場合は互換性を確認してください。また、IFS関数も条件の順序が重要で、最後のTRUEは、それまでの条件に当てはまらない場合の結果を指定しています。
【エラー対策】IF関数がうまく動かない原因と修正方法
IF関数の数式がエラーになったり、想定と異なる結果が表示されたりする場合は、条件式、文字列、かっこ、セルのデータを順番に確認します。数式が長いからといって、必ずしも複雑な問題が起きているわけではありません。単純な入力ミスが原因になっているケースもあります。
原因1:文字列をダブルクォーテーションで囲んでいない
たとえば、次の数式は正しい書き方です。
=IF(A2="完了","済","未")
条件として指定する文字列の「完了」と、条件が成立したときに返す「済」、成立しないときに返す「未」を、それぞれダブルクォーテーションで囲んでいます。引用符が不足している場合は、数式の入力内容を見直しましょう。
原因2:かっこの数が合っていない
IF関数を入れ子にすると、開きかっこと閉じかっこの数が合わなくなりやすくなります。特に3段階以上の評価では、内側のIF関数を閉じてから外側のIF関数を閉じる必要があります。
数式を入力する際は、まず1つのIF関数で動作を確認し、正常に動いたことを確かめてから条件を追加する方法がおすすめです。数式が長い場合は、Microsoft Excelの数式バーで全体を確認し、関数の区切りと閉じかっこを点検します。
原因3:比較演算子が条件に合っていない
80点ちょうどを合格に含めたいのにA2>80と記述すると、80点は条件を満たしません。80点以上を判定したい場合はA2>=80とします。
また、「等しくない」を意味する演算子は<>です。!=など、ほかのプログラミング言語で使う表記をそのまま入力しないようにしましょう。
原因4:カンマや引用符が正しく入力されていない
IF関数では、通常、各引数をカンマで区切ります。ただし、Excelの地域設定などによっては、引数の区切り記号が異なる場合があります。数式のカンマが原因でエラーになる場合は、使用している環境の設定に合った区切り記号を確認してください。
また、数式の中で全角の記号を入力すると、Excelが正しい演算子や区切りとして認識できないことがあります。半角のカンマ、括弧、比較演算子、ダブルクォーテーションを使って入力し直すと解決する場合があります。
原因5:空白に見えるセルや数字のデータ型が違う
空白に見えるセルでも、スペースが入力されていたり、数式で空文字列が返されていたりすることがあります。=IF(A2="","未入力","入力済み")で期待どおりに判定されない場合は、セルの内容を確認しましょう。
数値の比較で結果が想定と異なる場合も、セルに保存されているデータが数値なのか文字列なのかを確かめます。見た目が「100」であっても、文字列として保存されている可能性があります。データを数値に変換するなど、比較対象の形式をそろえることが解決につながります。
原因6:IFERROR関数でエラーを隠してしまう
IFERROR関数を使うと、数式の結果がエラーになった場合に、指定した値を代わりに表示できます。たとえば、=IFERROR(A2/B2,"計算不可")とすれば、計算結果がエラーのときに「計算不可」と表示できます。
ただし、IFERROR関数はIF関数の条件式が正しいかどうかを検証する機能ではありません。元の数式やデータに問題があっても、エラー表示だけが置き換わる場合があります。まず原因を確認し、エラーを利用者に見せたくない理由が明確な場合に限って使うのが適切です。

【プロの結論】IF関数を仕事で使いこなすための考え方
IF関数を使いこなすために必要なのは、長い数式を暗記することではありません。条件と結果を分け、どの条件を満たしたときに何を表示するかを明確にすることです。
たとえば、売上の達成判定なら「売上が目標以上か」という条件を設定します。申請処理なら「承認済みか」、在庫管理なら「在庫数が基準値を下回っているか」を条件にできます。業務のルールを論理式に置き換えれば、IF関数の構造は共通しています。
条件が1つなら基本のIF関数、すべての条件を満たす必要があるならAND関数、どれか1つでよいならOR関数、真偽を反転させるならNOT関数を使います。結果が3種類以上ある場合は、IF関数の入れ子やIFS関数を検討するとよいでしょう。
初心者が最初に取り組むなら、合否判定や入力状況の確認など、条件が明確で結果が2種類に分かれる例がおすすめです。複数条件や段階評価に進むのは、基本のIF関数が正しく動くことを確認してからでも遅くありません。
一方、条件が頻繁に変わる業務や、分岐が非常に多い処理では、数式を複雑にするよりも、条件と判定結果を別の表に整理する方法が適している場合もあります。数式を作成した本人以外が見ても判定ルールを理解できるかどうかを、設計の基準にするとよいでしょう。
【エクセル関数 if】に関するよくある質問(FAQ)
Q1:IF関数の基本的な使い方を覚えるには、何から始めればよいですか?
A1:まずは=IF(A2>=80,"合格","不合格")のような、数値の条件によって2種類の結果を切り替える数式から始めましょう。条件、真の場合の値、偽の場合の値という3つの引数の役割を理解すると、ほかの数式にも応用できます。
Q2:IF関数で2つの条件を同時に指定するにはどうすればよいですか?
A2:両方の条件を満たす必要があるならAND関数、どちらか一方でも満たせばよいならOR関数を使います。たとえば、=IF(AND(A2>=80,B2="提出済み"),"合格","不合格")なら、80点以上かつ提出済みの場合だけ合格と判定できます。
Q3:IF関数で空白セルを判定する方法はありますか?
A3:=IF(A2="","未入力","入力済み")と記述すれば、A2が空欄または空文字列の場合に「未入力」と表示できます。セルが本当に空であることだけを判定したい場合は、ISBLANK関数を使います。
Q4:IF関数の入れ子は何段まで使えますか?
A4:対応するExcelのバージョンによって制限は異なりますが、複数のIF関数を入れ子にして3段階以上の判定を作れます。ただし、分岐が増えるほど数式の保守が難しくなるため、IFS関数や条件表を利用する方法も検討してください。
Q5:IF関数でFALSEと表示されるのはなぜですか?
A5:IF関数の第3引数である「偽の場合の値」を省略すると、条件が成立しないときにFALSEが返されます。表示を空欄にしたい場合は、=IF(A2>=80,"合格","")のように、空文字列を指定します。
まとめ:IF関数は条件と結果を整理すれば使いこなせる
エクセルのIF関数は、条件に合うかどうかによって表示内容を切り替える基本関数です。構文は=IF(論理式,真の場合の値,偽の場合の値)で、数値や文字列の比較、空白判定、合否や達成状況の自動判定など、幅広い業務に活用できます。
複数の条件を扱う場合は、AND・OR・NOT関数を組み合わせ、3段階以上の評価ではIF関数の入れ子やIFS関数を使います。数式が動かないときは、引用符、比較演算子、区切り記号、かっこの対応関係、セルのデータ型を順番に確認しましょう。
最も大切なのは、数式を書く前に「何を条件とし、どの結果を返すのか」を整理することです。基本のIF関数から始め、必要な分だけ条件を追加していけば、複雑な数式でも構造を把握しやすくなり、修正や引き継ぎにも対応しやすいExcelシートを作れます。
参考情報:Microsoft サポートの「IF 関数」「Excel で IF と AND、OR、NOT 関数を使用する」「IF 関数 – 入れ子になった式と問題の回避」、mouse LABOのIF関数解説、Excelの森の複数条件に関する解説。 (出典: エクセル 関数 if(Yahoo!ニュース))