IF関数について
ここから LEVEL 5 に入ります。
LEVEL 4 で学んだ SUMIF / SUMIFS / COUNTIF / COUNTIFS にも「IF」が付いていましたよね。あれは「条件付きの集計」でした。
今回扱う IF関数 は、もう少しシンプルで根本的な関数です。「もし○○なら△△、そうでなければ□□」という、条件分岐そのもの を表現します。
Excelの世界で「IF」と聞いたら、まずこの IF関数 が頭に浮かぶようになってください。これからの関数の組み合わせで、何度も登場する基礎中の基礎となります。
IF関数の構文
=IF(論理式, 真の場合, 偽の場合)
3つの引数があります。
- 論理式:判定したい条件(例:A1>=80)
- 真の場合:条件が成立したときに返す値
- 偽の場合:条件が成立しなかったときに返す値
日本語にすると、「もし論理式が正しければ真の場合を返す。そうでなければ偽の場合を返す」となります。
具体例で見てみる
テストの点数で「合格 / 不合格」を判定したいとき。80点以上を合格、それ未満を不合格とします。
:::excel
A1=名前
B1=点数
C1=判定
A2=田中
B2=85
C2=★
A3=鈴木
B3=72
A4=佐藤
B4=90
A5=山田
B5=65
A6=高橋
B6=80
:::
★ =IF(B2>=80,"合格","不合格")
セルC2に ★ の数式を入力。B2は85なので、条件 B2>=80 は成立し、「合格」が返ります。
これを C3〜C6 に下にコピーすれば、5人全員の判定が一気に出ます。LEVEL 4 で学んだ相対参照 が、ここでも効いています。
文字列はダブルクォーテーションで囲む
ここで重要なポイントです。"合格" や "不合格" のように、結果として「文字列」を返したいときは、必ずダブルクォーテーションで囲みます。
SUMIF や COUNTIF で「条件は "営業部" のように " で囲む」と学びましたが、IF関数では「結果として返す文字」もダブルクォーテーションが必要です。
=IF(B2>=80, "合格", "不合格") ← 文字列なのでクォート必須
=IF(B2>=80, 100, 0) ← 数値ならクォート不要
=IF(B2>=80, A1, A2) ← セル参照もクォート不要
数値やセル参照のときは不要です。「文字を返したいときだけ、" で包む」と覚えてください。
関数の引数ダイアログを使うと安心
IF関数の作成は、[関数の引数] ダイアログ を使うのがおすすめです。セルを選択し、リボンの [数式] タブ > [論理] > [IF] から呼び出せます。

ここで便利なのが、「真の場合」「偽の場合」に文字列を入力すると、ダブルクォーテーションが自動で付く という機能です。
「合格」と入力して [Tab] や次の欄に移動すると、Excelが自動で "合格" と認識してくれます。手で " を打つ必要がないので、入力ミスを防げます。

ただし、直接セルに入力する場合は、自分でダブルクォーテーションを打つ必要があります。 引数ダイアログとセル直接入力で、挙動が違うところは覚えておきましょう。
「文字を返すときは " で囲む」というルールを意識しつつ、慣れないうちは引数ダイアログを活用するのが安全です。
比較演算子のおさらい
IF関数の論理式では、比較演算子をよく使います。SUMIF / COUNTIF と同じものです。
| 演算子 | 意味 |
|---|---|
= | 等しい |
<> | 等しくない(以外) |
> | より大きい |
< | より小さい |
>= | 以上 |
<= | 以下 |
これらを使って、B2>=80 や A2="営業部" のように条件を組み立てます。
ちょっとした実務シーン
1. 在庫アラート
在庫数が少なくなったら「要発注」と表示したい。
=IF(B2<10, "要発注", "")
10未満なら「要発注」、そうでなければ空白("")。偽の場合に "" を指定して、何も表示しない というのは、IF関数の定番テクニックです。表をすっきり保てます。
2. 達成判定
売上目標に対する達成判定。
=IF(B2>=C2, "達成", "未達")
B列が実績、C列が目標。実績が目標以上なら「達成」、そうでなければ「未達」。セル同士を比較する こともできます。
3. 値引き計算
10000円以上の購入で10%引き、そうでなければ定価。
=IF(B2>=10000, B2*0.9, B2)
結果が数式(計算式) でもOK。条件で計算方法を切り替えられます。
「論理式」とは何か
「論理式」と聞くと身構えてしまいますが、要は「正しい(TRUE)か、正しくない(FALSE)か、で答えられる式」のことです。
B2>=80:B2が80以上なら正しいA2="営業部":A2が「営業部」と等しければ正しいB2<>0:B2が0でなければ正しい
IF関数は、この「正しい / 正しくない」の判定結果を見て、真の場合か偽の場合かを返します。
ちなみに、論理式だけをセルに入力すると、「TRUE」または「FALSE」がそのまま返ってきます。試しにどこかのセルに =B2>=80 と入れてみると、TRUE か FALSE が表示されますよ。これがIF関数が裏でやっている判定です。
手を動かして確かめると、感覚がつかみやすいですよ。
まとめ
- IF関数で「もし○○なら△△、そうでなければ□□」を表現
- 構文:=IF(論理式, 真の場合, 偽の場合)
- 文字列を返すときは ダブルクォーテーションで囲む
- 引数ダイアログを使うと、文字列に
"が自動で付く - 真の場合・偽の場合に 数式やセル参照 も指定できる
- 「論理式」は「TRUE / FALSE で答えられる式」のこと
次回は IF関数の ネスト(入れ子)。条件を組み合わせて、もう一段複雑な分岐を表現します。
ショートカット
※このレッスンに対応するショートカットはありません。