この記事は 事務でよく使うExcel関数まとめ|目的から探せる一覧 の1本です。他の関数もまとめて見られます。
式を入れた表を印刷したら、まだ何も入力していない行に 0 やエラーがずらっと並んでいた。
Excelを使っていれば一度は経験するはずです。数字としては正しいのに、資料としては渡せない。結局その部分だけ手で消している、という現場をよく見ます。
これを直すのが IF(イフ) です。この記事では 「空なら空欄」 という一番よく使う形から始めます。
この記事で直すもの
見積書の下のほうが、こうなっている状態です。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 品名 | 単価 | 数量 | 金額 |
| 2 | 杉板 12mm | 1,200 | 50 | 60,000 |
| 3 | 檜柱 105角 | 3,800 | 20 | 76,000 |
| 4 | 0 | |||
| 5 | 0 | |||
| 6 | 0 |
=C2*D2 のような式を下までコピーしているので、空欄どうしの掛け算の結果として 0 が出ています。Excelとしては正しい動きです。
これを、こうします。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 品名 | 単価 | 数量 | 金額 |
| 2 | 杉板 12mm | 1,200 | 50 | 60,000 |
| 3 | 檜柱 105角 | 3,800 | 20 | 76,000 |
| 4 | ||||
| 5 | ||||
| 6 |
式は消していません。品名を入力した瞬間に、金額が自動で出ます。
IFの形
- 条件「A2が空かどうか」のように、正しいか正しくないかを判定できる式
- 条件に合ったときの値条件が成り立つときに表示するもの
- 合わなかったときの値成り立たないときに表示するもの
日本語にすると 「もし〜なら〜、そうでなければ〜」 です。3つの部品をカンマで区切って並べるだけです。
さきほどの式を当てはめると、こうなります。
| 部品 | 中身 | 意味 |
|---|---|---|
| 条件 | A2="" | A2が空だったら |
| 合ったとき | "" | 何も表示しない |
| 合わなかったとき | C2*D2 | 単価×数量を計算する |
"" は「何も表示しない」という意味です
ダブルクォートを2つ続けて書きます。間に何も入れません。
「空白」ではなく「空の文字」を表示している、という状態です。
キーボードでは Shift+2 を2回押します。" "(間にスペース)にしないよう注意してください。見た目は同じですが別物です。
STEP1:まず「空なら空欄」を作る
一番使う形なので、これだけは覚えてください。
- 判定したいセルを決める
たいていは「その行の一番左の入力欄」です。見積なら品名、日報なら日付。そこが空なら、その行はまだ使っていないと判断できます。
- 式を
=IF(判定セル="", "", 元の式)の形にするもともと
=C2*D2と書いていたなら、=IF(A2="", "", C2*D2)にします。囲むだけです。 - 1行だけ入れて確認する
品名を入れると金額が出て、消すと空欄に戻れば正解です。
- 必要な行数分コピーする
ここで初めて下までコピーします。
もとの式を =IF(判定セル="", "", と ) で囲むだけ、と覚えると迷いません。
STEP2:条件によって表示を変える
「空なら空欄」が分かれば、条件を変えるだけで応用できます。在庫が少ない品目に印を付けてみます。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 品番 | 品名 | 在庫数 | 判定 |
| 2 | S-100 | 杉板 12mm | 48 | |
| 3 | H-200 | 檜柱 105角 | 6 | 要発注 |
| 4 | G-300 | 合板 9mm | 25 | |
| 5 | K-400 | 米松 平角 | 3 | 要発注 |
条件の書き方は、次のとおりです。
| 書きたいこと | 書き方 | 例 |
|---|---|---|
| 等しい | = | C2=0 |
| 等しくない | <> | C2<>0 |
| より大きい | > | C2>10 |
| 以上 | >= | C2>=10 |
| より小さい | < | C2<10 |
| 以下 | <= | C2<=10 |
| 空である | ="" | A2="" |
| 空でない | <>"" | A2<>"" |
文字を条件に使うときは、必ず " で囲みます
=IF(B2=完了, "済", "") と書くと #NAME? というエラーになります。
Excelが「完了」を関数名か名前だと思って探しにいくためです。
正しくは =IF(B2="完了", "済", "") です。
表示する文字のほうも同じで、"要発注" のように囲みます。
STEP3:文字ではなく計算を入れてもいい
IFの2番目・3番目には、文字だけでなく計算式や他の関数も書けます。
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | 得意先 | 区分 | 数量 | 金額 | 請求額 |
| 2 | A社 | 卸 | 50 | 120,000 | 114,000 |
| 3 | B社 | 小売 | 12 | 38,000 | 38,000 |
| 4 | C社 | 卸 | 80 | 250,000 | 237,500 |
「条件によって計算方法を変える」のもIFの仕事です。値引き、送料、区分別の単価。事務作業で判断が入る場面は、たいていこの形にできます。
よくあるつまずき
"" にしたのに、空白として扱われない
=COUNTA(範囲) で数えると、"" の行も 1件として数えられます。
また =ISBLANK(セル) は FALSE を返します。
見た目は空欄でも、Excelから見ると「空の文字が入っている」状態だからです。
件数を数えるときは、"" を除く条件を付けるか、
そもそも数える対象を別の列(品名など)にしてください。
これは知らないと必ずハマります。「金額欄が空欄なのに件数が合わない」という相談は、ほぼこれが原因です。
条件に合っているのに、思った結果にならない
数字が「文字」として入っている可能性があります。
=IF(C2<=10, "要発注", "") の C2 が文字だと、比較が正しく働きません。
セルの中で左寄せになっていたら文字です(数値なら自動で右寄せ)。
IFの入れ子は、2段までにしてください
=IF(A, "甲", IF(B, "乙", IF(C, "丙", "丁"))) のように重ねていくと、
書けはしますがあとから誰も直せません。
3つ以上に分けたいときは、IFを重ねるのではなく別の方法を使います。
条件が3つ以上あるときの書き方は IFS関数の使い方(近日公開)、
判定の対応表を作って引く方法は XLOOKUP関数の使い方 で扱います。
「1つの式に判断を詰め込みすぎない」というのが、あとで効いてくる考え方です。式が読めなくなった時点で、その仕組みは属人化しています。
印刷・PDFで効いてきます
見積書、請求書、日報、作業報告書。そのまま印刷して渡す書類では、この「空なら空欄」が特に効きます。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 品名 | 単価 | 数量 | 金額 |
| 2 | 杉板 12mm | 1,200 | 50 | 60,000 |
| 3 | 檜柱 105角 | 3,800 | 20 | 76,000 |
| 4 | 合板 9mm | 900 | 30 | 27,000 |
| 5 | ||||
| 6 | 合計 | 163,000 |
「印刷前に0を手で消す」という作業が、これでなくなります。毎回発生していた手作業が、式を1回書き換えるだけで消える。IFがいちばん効くのはこういう場面です。
今日やってみること
- 手元の帳票を開いて、0やエラーが出ている列を探す
見積・請求・日報など、印刷して使うファイルが向いています。
- その列の式を確認する
=C2*D2のような式が入っているはずです。数式バーで確認してください。 =IF(A2="", "", 元の式)の形に書き換えるA2は、その行の「一番左の入力欄」に読み替えてください。まず1行だけです。
- 入力して消して、動きを確かめる
入力すると出て、消すと空欄に戻れば完成です。あとは下までコピーします。
1つの帳票で試してから、他のファイルにも同じことをしてください。
次に読むとよい記事
- 条件が3つ以上あるとき → IFS関数の使い方(近日公開)
- エラー表示(#N/A など)を消したいとき → IFERROR関数の使い方
- 「AかつB」「AまたはB」で判定したいとき → AND・OR関数の使い方(近日公開)
- 判定の対応表を作って引く方法 → XLOOKUP関数の使い方
- 条件に合う行だけ合計したいとき → SUMIFS関数の使い方
「毎回、印刷前に手で直している箇所がある」という状態でしたら、たいてい仕組みで消せます。実際のファイルを拝見すれば判断できます。現状のヒアリングと課題整理は無料です。
この記事について
SUPRAXは、林業・製造・運送の現場経験をもとに、中小企業の業務改善・AI活用・GISの支援を行っています。 記事の内容について「うちの場合はどうか」を聞きたい方は、無料相談をご利用ください。
あわせて読みたい
XLOOKUP関数の使い方|品番から品名と単価を自動で出す
伝票や日報を作るとき、品番を見ながら品名と単価をマスタから探して手で打ち込んでいませんか。 この作業は XLOOKUP(エックスルックアップ) を使うと…
SUM関数の使い方|行を足しても合計が狂わない書き方
Excelの合計は、Σ(オートSUM)ボタンを押せば入ります。ほとんどの方がそうしているはずです。 にもかかわらず、「合計が合わない」という相談は今でも…
TEXT関数と日付の処理|「2026/9/1」を「9月」にまとめる
「月ごとの売上を出してほしい」と言われて、明細表を開く。日付は1日単位で入っているので、そのままでは月でまとめられません。 手で「9月」と打っていくと、…