ホーム 芸能ニュース・ゴシップ 【2026年版】エクセルIF関数の使い方を徹底解説!複数条件とエラー対策

【2026年版】エクセルIF関数の使い方を徹底解説!複数条件とエラー対策

新見 沙耶香 新見 沙耶香 • 更新: • 公開: • 読了約 17 分
目次

Excelで成績の合否を判定したり、売上目標の達成状況を表示したり、入力内容に応じて自動的にメッセージを切り替えたりするなら、まず覚えたいのがIF関数です。IF関数は「条件を満たしていればA、満たしていなければB」という処理を実現できる、Excelの基本関数の一つです。

ただし、数式の書き方や比較演算子の選び方、文字列を囲むダブルクォーテーション、複数条件を組み合わせる方法などでつまずく人も少なくありません。Microsoftサポートの解説でも、IF関数とAND・OR・NOT関数の組み合わせや、複雑な入れ子式の保守性が取り上げられています。2026年にExcelを使う初心者にも分かるよう、基本構文から実務で使える具体例、エラーの修正方法まで順を追って解説します。

【基本を理解】ExcelのIF関数とは?構文と数式の書き方

エクセル関数if

IF関数は、指定した条件が成立するかどうかを判定し、その結果に応じて異なる値を返す関数です。例えば、テストの点数が60点以上なら「合格」、60点未満なら「不合格」と自動表示できます。手作業で判定する必要がなくなるため、成績管理、売上集計、勤怠管理、在庫チェックなど幅広い業務で役立ちます。

IF関数の基本構文

IF関数の基本構文は次のとおりです。

=IF(論理式, 真の場合の値, 偽の場合の値)

Excelでは、引数をカンマで区切って入力します。環境によっては、地域設定などにより区切り記号がセミコロンになる場合もあります。

  • 論理式:条件が成立するかどうかを判定する式。
  • 真の場合の値:条件が成立したときに返す値。
  • 偽の場合の値:条件が成立しなかったときに返す値。省略も可能ですが、省略するとFALSEが返ります。

例えば、セルB2に入力された点数が60点以上なら「合格」、それ以外なら「不合格」と表示したい場合、C2に次の数式を入力します。

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

B2が75なら「合格」、45なら「不合格」と表示されます。B2の値を変更すると判定結果も自動で更新されるため、対象者が多い場合にも便利です。

IF関数の数式は3ステップで作る

初心者は、いきなり長い数式を入力するのではなく、条件と結果を分けて考えると理解しやすくなります。

  1. 判定したいセルを決める。例:B2の点数。
  2. 条件を決める。例:60点以上かどうか。
  3. 条件を満たす場合と満たさない場合の表示を決める。例:「合格」「不合格」。

この3つを順番に組み立てれば、IF関数の基本形が完成します。数式を入力する際は、先頭の「=」を忘れないことも大切です。

【実例で解説】比較演算子・文字列判定・空白の場合の使い方

IF関数の使い方を理解するうえで、論理式の書き方は欠かせない。論理式とは、条件がTRUE(真)またはFALSE(偽)になるように記述した式のことです。比較演算子を使えば、数値や文字列、入力の有無などを判定できます。

よく使う比較演算子一覧

  • =:等しい
  • >:より大きい
  • <:より小さい
  • >=:以上
  • <=:以下
  • <>:等しくない

例えば、売上が10万円以上なら「達成」、それ未満なら「未達」と表示する数式は次のとおりです。

=IF(B2>=100000,"達成","未達")

ここで注意したいのは、「以上」と「より大きい」の違いです。10万円ちょうども達成に含めるなら「>=」を使います。「>」では10万円ちょうどが条件に含まれません。

文字列を判定する方法

セルに入力された文字列を判定するときは、比較する文字列を半角のダブルクォーテーションで囲みます。例えば、A2が「完了」なら「処理済み」、それ以外なら「未処理」と表示する数式は次のとおりです。

=IF(A2="完了","処理済み","未処理")

文字列の比較では、入力内容に余分なスペースが含まれていないかも確認しましょう。「完了」と「完了 」のように末尾に空白があると、意図した判定にならない場合があります。

セルが空白の場合はどうする?

入力がないセルに「未入力」と表示したい場合は、空文字列を表す「""」を使います。

=IF(A2="","未入力","入力済み")

A2が空白なら「未入力」、値が入っていれば「入力済み」と表示します。また、条件を満たさないときに何も表示したくない場合は、次のように書きます。

=IF(B2>=60,"合格","")

この数式では、60点未満の場合に空文字列が返され、セル上は空白に見えます。ただし、これはセル自体を消去する処理ではありません。数式は残っているため、後続の集計や別の関数で扱う場合には注意が必要です。

【一覧で比較】IF関数の基本・応用パターンと実務での使い分け

IF関数は基本形を覚えるだけでも役立ちますが、実務では複数の条件や段階的な判定が必要になることがあります。目的に応じて適切な書き方を選べば、数式の読みやすさと修正のしやすさを両立できます。

用途 数式の例 処理内容
数値の判定 =IF(B2>=60,"合格","不合格") 60点以上かどうかを判定する
文字列の判定 =IF(A2="完了","済","未") 入力内容が「完了」かどうかを判定する
空白の判定 =IF(A2="","未入力","入力済み") 入力の有無を確認する
複数条件(AND) =IF(AND(B2>=60,C2="提出済"),"合格","確認") 点数と提出状況の両方を満たすか判定する
複数条件(OR) =IF(OR(B2>=80,C2="推薦"),"対象","対象外") 点数または推薦条件のどちらかを満たすか判定する
段階的な判定 =IF(B2>=80,"A",IF(B2>=60,"B","C")) 点数に応じて3段階に分類する

表の数式は、各例のセルに想定した値が入力されていることを前提としています。実際の業務では、条件に使うセルや判定基準を自分の表に合わせて置き換えてください。

【応用編】IF関数とAND・OR・NOT関数で複数条件を判定する

単一条件のIF関数では対応できない場合、AND関数、OR関数、NOT関数を組み合わせると、より細かな判定が可能になります。Microsoftサポートでも、これらの論理関数をIF関数と組み合わせる方法が案内されています。

AND関数:すべての条件を満たす場合

AND関数は、指定した条件がすべてTRUEの場合にTRUEを返します。例えば、テストが60点以上で、課題も提出済みの場合だけ「合格」とするなら、次の数式を使います。

=IF(AND(B2>=60,C2="提出済"),"合格","不合格")

B2が60点以上であることと、C2が「提出済」であることの両方が必要です。片方でも条件を満たさなければ「不合格」と表示されます。

OR関数:いずれかの条件を満たす場合

OR関数は、指定した条件のうち少なくとも1つがTRUEならTRUEを返します。例えば、売上が目標以上、または特別表彰の対象者なら「対象」と表示するケースです。

=IF(OR(B2>=100000,C2="表彰対象"),"対象","対象外")

売上が10万円に届いていなくても、C2が「表彰対象」なら「対象」になります。ANDとORを混同すると判定結果が大きく変わるため、「すべて必要なのか」「どれか1つでよいのか」を先に整理してください。

NOT関数:条件を反転する場合

NOT関数は、TRUEをFALSEに、FALSEをTRUEに反転させます。例えば、A2が「東京」ではない場合に「東京以外」と表示する数式は次のとおりです。

=IF(NOT(A2="東京"),"東京以外","東京")

単純な不一致の判定であれば「<>」を使っても同じ目的を達成できます。NOT関数は、既存の条件式を反転させたい場合に便利です。

IF関数の入れ子で複数段階に分類する

IF関数の中に別のIF関数を入れる方法を「入れ子」と呼びます。例えば、80点以上をA、60点以上80点未満をB、60点未満をCと判定する場合は、次のように記述します。

=IF(B2>=80,"A",IF(B2>=60,"B","C"))

この式は、最初に80点以上かを判定し、条件を満たさない場合に60点以上かを判定します。条件を評価する順番が重要で、上から順に判定して最初にTRUEとなった条件の結果が返されます。

条件が増える場合は、Microsoftサポートが紹介するIFS関数も選択肢になります。IFS関数は複数の条件と対応する結果を順に指定できるため、長い入れ子式より読みやすくなる場合があります。ただし、利用できるExcelのバージョンを確認し、条件の順序も適切に設定してください。

なお、Microsoftサポートによると、AND関数とOR関数は最大255個の条件を扱えます。一方、条件を複雑に入れ子にしすぎると、数式の作成・テスト・保守が難しくなるため、条件の数だけでなく読みやすさも重視する必要があります。

【エラー原因と修正方法】IF関数が動かないときのチェックリスト

IF関数が思ったとおりに動かない場合は、関数そのものが間違っているとは限りません。入力形式や参照セルの値、条件の設計に原因があることもあります。次の項目を順番に確認すると、修正箇所を絞り込めます。

1. 括弧の数やカンマの位置が違う

IF関数は、開き括弧と閉じ括弧の対応が大切です。例えば、次の数式は括弧が不足しています。

=IF(B2>=60,"合格","不合格"

正しくは、最後に閉じ括弧を加えます。

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

引数を区切る記号が使用環境と合っていない場合も、数式を正しく認識できないことがあります。Excelが表示するエラーメッセージを確認し、区切り記号を見直しましょう。

2. 文字列の引用符が抜けている

「合格」「不合格」などの文字列を結果として返す場合は、半角のダブルクォーテーションで囲みます。

=IF(B2>=60,合格,不合格)

このような入力では、文字列を正しく指定できません。次のように修正します。

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

また、見た目が似ていても、全角の引用符や記号は数式として認識されない原因になります。数式内では半角記号を使うことを基本にしてください。

3. 数値と文字列を取り違えている

セルに数字が表示されていても、実際には文字列として保存されている場合があります。数値として扱いたいデータに文字列が混在していると、比較や集計で予想外の結果が発生することがあります。

例えば、点数のセルに「60点」と入力すると、単純な数値の60とは異なる扱いになります。点数は「60」のように数値で入力し、単位を表示したい場合はセルの表示形式を利用するなど、データと見た目を分けて管理すると安全です。

4. 条件の順序が間違っている

入れ子のIF関数で、広い条件を先に書くと、後ろの条件が判定されない場合があります。例えば、80点以上をA、60点以上をBにしたいとき、先に「60点以上」を判定すると、80点以上の人も先にBに分類されてしまいます。

正しい例は次のとおりです。

=IF(B2>=80,"A",IF(B2>=60,"B","C"))

複数段階の判定では、条件の範囲が重なっていないか、上から順に評価したときに意図した結果になるかを確認しましょう。

5. エラー値を隠すだけでは根本解決にならない

IF関数の条件式や参照先にエラーがあると、そのエラーが結果に影響する場合があります。計算式の結果がエラーになること自体を処理したい場合は、IFERROR関数を検討できます。

=IFERROR(A2/B2,0)

この式は、A2をB2で割った結果がエラーになった場合に0を返します。ただし、原因を問わずエラーを0に置き換えるため、入力ミスなどの異常まで見えなくなるおそれがあります。業務上は、エラーを隠す前に参照先や計算条件を確認し、0を返すことが適切か判断する必要があります。

【プロの結論】IF関数を使いこなすための判断基準

IF関数を効率よく使うために大切なのは、長い数式を覚えることではなく、判定条件と処理結果を明確に分けることです。業務で数式を共有する場合は、作成者以外の人が読んでも条件を理解できる構造を意識しましょう。

  • 条件が1つならIF関数:合否判定、目標達成、入力チェックなどに向いています。
  • すべての条件が必要ならAND:点数と提出状況など、複数の条件を同時に満たす必要がある場合に適しています。
  • どれか1つでよいならOR:複数の達成基準のうち、いずれかを満たす場合の判定に便利です。
  • 条件を反転するならNOT:特定の値ではない場合など、否定条件を分かりやすく表現できます。
  • 段階的な分類なら入れ子やIFS:成績ランクや評価区分など、複数の結果を出し分ける処理に向いています。

一方、条件が増えすぎて数式が長くなった場合や、判定基準を頻繁に変更する場合は、IF関数を何重にも重ねる方法が最適とは限りません。条件を別のセルや表に整理したり、IFS関数などの代替手段を検討したりすると、変更時の修正漏れを減らせます。

数式を作成したら、条件を満たすケースだけでなく、境界値や条件を満たさないケースもテストしてください。例えば「60点以上」を判定するなら、59点・60点・61点をそれぞれ試すことで、比較演算子の指定ミスを発見しやすくなります。こうした確認が、実務で安心して使えるExcelシートにつながります。

【エクセル関数 if】に関するよくある質問(FAQ)

Q1:IF関数は初心者でも簡単に使えますか?
A1:はい。基本構文の「条件・真の場合の値・偽の場合の値」の3つを理解すれば使えます。まずは「=IF(B2>=60,"合格","不合格")」のような単一条件から始め、慣れてからANDやORを組み合わせるとスムーズです。

Q2:IF関数で複数条件を指定するにはどうすればよいですか?
A2:すべての条件を満たす必要がある場合はAND、いずれか1つを満たせばよい場合はORを使います。例えば、点数が60点以上で課題も提出済みなら「=IF(AND(B2>=60,C2="提出済"),"合格","不合格")」と記述できます。

Q3:IF関数で条件に合わない場合、空白を表示できますか?
A3:できます。偽の場合の値に「""」を指定します。例えば「=IF(B2>=60,"合格","")」なら、60点未満の場合は空白に見える表示になります。ただし、セルの内容自体が削除されるわけではありません。

Q4:IF関数でエラーが出たときは何を確認すればよいですか?
A4:最初に、先頭の「=」、括弧の対応、引数の区切り記号、文字列を囲むダブルクォーテーションを確認してください。続いて、参照セルのデータ型や条件の順序を調べます。計算結果のエラーを処理する場合はIFERROR関数も使えますが、原因を確認せずにエラーを隠すことは避けましょう。

まとめ:IF関数は基本構文と条件整理から身につけよう

ExcelのIF関数は、条件に応じて表示する値を切り替えるための基本関数です。論理式と比較演算子を正しく指定すれば、合否判定や売上管理、文字列のチェック、空白セルの判定などを自動化できます。

複数条件にはAND・OR・NOT関数、段階的な判定には入れ子のIF関数やIFS関数を使い分けるのが基本です。数式が複雑になったときは、条件の順序や括弧、引用符、セルのデータ型を一つずつ確認しましょう。

まずは単一条件のIF関数から試し、境界値を含めて結果を検証すること。読みやすく、修正しやすい数式を作ることが、Excelを日々の業務で使いこなす近道です。

同じカテゴリの記事

新見 沙耶香

SNSや掲示板発の話題を扱うライター。拡散元の投稿日時と公式発表の有無を確認し、出所が特定できない噂は採用しません。

おすすめの関連記事