「もし点数が80点以上なら『合格』、そうでなければ『不合格』と表示させたい」 「在庫数が一定以下になったら『要補充』と自動で出したい」
Excelを使っていると、このように「ある条件によって表示する内容を変えたい」という場面がよくあります。そんなときに不可欠なのが「IF(イフ)関数」です。
IF関数は、英語の「if(もし~なら)」という意味の通り、条件分岐を実現するための関数です。一度使いこなしてしまえば、これまで手作業で入力していた判定作業をすべて自動化でき、作業効率が劇的に向上します。
この記事では、Excel初心者の方に向けて、IF関数の基本的な仕組みから、複数の条件を組み合わせる応用テクニックまで、丁寧に解説します。
IF関数の基本:仕組みと書き方
IF関数を一言でいうと、「指定した条件が正しいか(TRUE)、正しくないか(FALSE)によって、返す結果を切り替える関数」です。
IF関数の基本構文
IF関数の書き方は、シンプルに以下の3つの要素(引数)で構成されています。
`=IF(論理式, 真の場合, 偽の場合)`
それぞれの役割をかみ砕いて説明します。
- 論理式(条件を判定する部分):
「もし〇〇なら」という条件を指定します。ここでは「比較演算子」を使い、「Aセルが80以上か?」といった判定式を書きます。
- 真の場合(条件を満たしたとき):
論理式の結果が「正しい(TRUE)」ときに、セルに表示させたい値や文字を指定します。
- 偽の場合(条件を満たさなかったとき):
論理式の結果が「正しくない(FALSE)」ときに、セルに表示させたい値や文字を指定します。
具体的な活用例:合否判定リスト
たとえば、C3セルにあるテストの点数が「80点以上なら合格、それ未満なら不合格」と表示させたい場合は、次のように入力します。
`=IF(C3>=80, "合格", "不合格")`
この数式を分解すると、以下のようになります。
- 論理式:`C3>=80`(C3セルの値が80以上かどうかを評価)
- 真の場合:`"合格"`(80点以上であれば「合格」と表示)
- 偽の場合:`"不合格"`(79点以下であれば「不合格」と表示)
ここで重要なポイントが一つあります。関数の中で「文字列」を指定する場合は、必ずダブルクォーテーション(" ")で囲む必要があるということです。数字のみを指定する場合は、そのまま記入して問題ありません。
条件指定に欠かせない「比較演算子」の一覧
IF関数の「論理式」を作る際に使うのが「比較演算子」です。これを使うことで、「以上」「未満」「等しい」などの条件をExcelに伝えることができます。
よく使われる比較演算子は以下の通りです。
| 演算子 | 意味 | 例(AとBの比較) | 結果がTRUEになる条件 |
|---|---|---|---|
| `=` | 等しい | `A=B` | AとBが同じ値である |
| `<>` | 等しくない | `A<>B` | AとBが異なる値である |
| `>` | より大きい | `A>B` | AがBよりも大きい |
| `<` | より小さい | `A<B` | AがBよりも小さい |
| `>=` | 以上 | `A>=B` | AがBより大きいか、または等しい |
| `<=` | 以下 | `A<=B` | AがBより小さいか、または等しい |
例えば、「在庫数が10個以下(10個を含む)になったら警告を出したい」という場合は、`<=10` という演算子を使って条件を作ります。
【応用】複数の条件で表示を変える方法
基本のIF関数では「AかBか」の2択しか選べませんが、実務では「80点以上は合格、60点以上は再試験、それ未満は不合格」のように、3つ以上の結果を使い分けたいことがあります。
そのような場合は、2つのアプローチがあります。
1. IF関数を「入れ子(ネスト)」にする
IF関数の「偽の場合」のところに、さらに別のIF関数を入れる方法です。これを「ネスト(入れ子構造)」と呼びます。
例:点数による3段階評価 `=IF(C3>=80, "合格", IF(C3>=60, "再試験", "不合格"))`
この数式の動きは以下の通りです。
- まず `C3>=80` か判定し、正しければ「合格」で終了。
- 正しくなければ(80点未満なら)、次の `IF(C3>=60, …)` へ進む。
- ここで60点以上であれば「再試験」、そうでなければ(60点未満なら)「不合格」となる。
この方法は汎用性が高く、多くのバージョンで利用可能です。ただし、条件が4つ、5つと増えていくと、数式が非常に長く複雑になり、後から修正する際にミスが起きやすくなるというデメリットがあります。
2. IFS(イフス)関数を使う(Excel 2019以降)
Excel 2019以降を使用しているなら、よりシンプルに書ける「IFS関数」がおすすめです。IFS関数は、複数の条件と結果をセットで並べて書くだけで判定してくれます。
例:属性による入場料の切り替え 属性(C2セル)によって、こどもは500円、学生は800円、大人は1200円、それ以外は「エラー」と表示したい場合。
`=IFS(C2="こども", 500, C2="学生", 800, C2="大人", 1200, TRUE, "エラー")`
IFS関数の特徴は以下の通りです。
- `条件1, 結果1, 条件2, 結果2…` と順番に記述できる。
- 最初に条件を満たした時点で結果が返される。
- 最後に `TRUE, "エラー"` と記述することで、どの条件にも当てはまらなかった場合の「その他」の結果を指定できる。
ただし注意点として、IFS関数は古いバージョンのExcel(Excel 2016など)でファイルを開くとエラーになってしまいます。共有相手のExcelバージョンが不明な場合は、従来のIF関数のネストを利用しましょう。
IF関数をさらに便利に使う組み合わせ術
IF関数は単体でも便利ですが、他の関数と組み合わせることで、さらに高度な自動化が可能です。
AND関数・OR関数との組み合わせ
「点数が80点以上」かつ「出席率が90%以上」の場合のみ合格にしたい、というように複数の条件を同時に満たしたい場合は `AND関数` を、どちらか一方を満たせば良い場合は `OR関数` をIF関数の論理式部分に組み込みます。
VLOOKUP関数との組み合わせ
VLOOKUP関数でデータを検索し、その結果に応じてさらに条件分岐させるという使い方も一般的です。「検索結果が〇〇であれば△△の処理をする」という流れを作ることで、複雑なデータ管理を自動化できます。
IFERROR関数によるエラー回避
数式を組んでいると、参照先が空欄だったりして `#N/A` や `#VALUE!` といったエラーが表示されることがあります。これを防ぎ、「エラーのときは空白にする」などの処理をしたい場合は `IFERROR関数` を併用するのが定石です。
まとめ:IF関数で「判断の自動化」を
IF関数をマスターすれば、データの判定や分類をすべてExcelに任せることができます。
- 基本は `=IF(論理式, 真の場合, 偽の場合)`
- 文字列を指定するときは `" "` で囲む
- 比較演算子(`>=` や `<>` など)を使いこなす
- 3つ以上の分岐は「ネスト(入れ子)」か「IFS関数」を活用する
まずはシンプルな「合格・不合格」のような2択から始めてみてください。慣れてきたら、T-scoreの集計や在庫管理など、実際の業務データに適用してみることで、次第に複雑な条件分岐もスムーズに組めるようになるはずです。
Excelでの「もしも」を自動化して、日々の作業時間を大幅に短縮しましょう。
ピックアップ記事



