Excel関数で空白なら空白にする方法をお探しですね。

広告

Excelで「参照セルが空白なら空白にする」IF関数の使い方【初心者向け】

Excelで別のセルを参照する数式を入れたとき、参照元が空っぽなのに「0」や「1900/1/0」みたいな変な値が表示されて困ったことはありませんか?

特に請求書や管理表のように、あらかじめ数式をコピーしておく表では、空白行まで数字やエラーが出てしまうと見た目が悪くなりますよね。

この記事では、「参照セルが空白なら空白にする」IF関数の使い方を、よくある間違いや実務での使い分けまで含めて分かりやすく解説します。

基本の数式:「=IF(A1=””,””,A1)」

参照セルが空白なら結果も空白にしたい場合、基本の数式はこちらです。

“`
=IF(A1=””,””,A1)
“`

これは「A1セルが空白だったら空白を表示し、空白でなければA1の値を表示する」という意味です。

たとえばC1セルにA1の内容を表示したいけど、A1が未入力のときにC1へ「0」を出したくない…そんなときに使います。

Excelでは空白セルをそのまま参照すると、場合によっては0として表示されてしまうことがあります。

IF関数で先に空白かどうかをチェックしておくと、見た目をキレイに整えられます。

「””」ってなに?

数式の中で特に大事なのが「**””**」です。

これはダブルクォーテーションを2つ続けたもので、Excelでは「何も表示しない(空白)」という意味になります。

IF関数の構造は「=IF(条件, 条件に合うとき, 条件に合わないとき)」なので、A1が空白のときに何も表示したくないなら、「条件に合うとき」の部分に「””」を指定します。

ここを何も入力せずに「=IF(A1=””,,A1)」のようにしてしまうと、意図せず0が返ってくることがあるので注意してくださいね。

応用パターン

基本形は、用途に合わせてこんなふうに変えられます。

– **参照元をそのまま表示する**
`=IF(A1=””,””,A1)`

– **空白でなければ計算する**
`=IF(A1=””,””,A1*B1)`

– **空白なら「未入力」と表示する**
`=IF(A1=””,”未入力”,A1)`

請求書や見積書の金額欄では、「数量が空白なら金額も空白、数量が入力されていれば単価と掛け算する」といった使い方がよくあります。

たとえば数量がF14、単価がE14にある場合はこう入力します。

“`
=IF(F14=””,””,E14*F14)
“`

このように、計算の前に「必要な入力があるか」を確認することで、空白行に余計な値やエラーが出るのを防げます。

「=IF(A1=””,””,A1)」と「=IF(A1=0,””,””,A1)」の違い

空白なら空白にする数式として「=IF(A1=0,””,A1)」を使っている人もいます。

たしかに、A1が完全な未入力セルの場合、Excelの比較では空白セルが0と同じように扱われる場面があるため、見た目上は問題なく動くことがあります。

でもこの数式、実は「空白なら空白」ではなく、正確には「**A1が0なら空白**」という判定なんです。

そのため、A1に本当に数値の0が入力されている場合も空白になってしまいます。

見た目は空白でも中身が違うことがある

実務で特に注意したいのは、見た目は空白でも、セルの中に数式が入っているケースです。

たとえばA1に「=IF(E1=””,””,E1)」という数式が入っていて、結果として空白に見えている場合、A1は完全な未入力セルではありません。

このような「数式が返した空白」は、`A1=””`ではTRUEになりやすい一方、`A1=0`ではFALSEになることがあります。

つまり、同じように空白に見えても、完全な空白セルなのか、数式で空文字を返しているのかによって判定結果が変わるんです。

どっちを使えばいい?

基本的には「**=IF(A1=””,””,A1)**」を使うのが無難です。

理由は、判定したい対象が「0かどうか」ではなく「空白かどうか」だからです。

売上、数量、在庫、点数などの表では、0も有効な値として扱う可能性があります。

`A1=0`で空白化すると、本来表示すべき0まで消してしまう危険があります。

ただし、「**0を表示したくない**」という目的なら「=IF(A1=0,””,A1)」が適している場合もあります。

たとえば集計結果が0の行を見た目上非表示にしたい、ゼロ金額を印刷したくない、といったケースです。

目的が空白判定なら「**=””**」、目的が0判定なら「**=0**」と分けて考えると、後から表を修正するときにも混乱しにくくなります。

「1900/1/0」が表示される問題と対処法

Excelで空白処理が必要になる代表例が、別シートや別セルの日付を参照している場合です。

たとえば「=A1」のように日付セルを参照したとき、A1が空白なのに参照先に「**1900/1/0**」のような変な日付が表示されることがあります。

これは、Excelが日付を内部的には連続した数値として扱っており、空白参照が0として処理されることがあるためです。

この場合も、参照先に「=IF(A1=””,””,A1)」を入れておけば、元の日付セルが空白のときに余計な日付を表示せずに済みます。

数式が入ったセルの空白判定

また、AVERAGE関数や掛け算、割り算などを組み合わせている表でも、空白の扱いによって結果が変わります。

たとえばA10に見た目上空白の数式が入っている場合、「A10が空白なら平均を表示しない」と考えていても、判定方法によっては平均値が表示されてしまうことがあります。

単純な未入力セルだけを想定していると、表を引き継いだときや別システムのデータを貼り付けたときに思わぬ表示崩れが起こります。

ISBLANK関数という選択肢もある

空白判定には**ISBLANK関数**を使う方法もあります。

“`
=IF(ISBLANK(A1),””,A1)
“`

と書くと、A1が空白セルなら空白を返します。

ただし、ISBLANK関数は「何も入力されていないセル」を判定する関数なので、数式が入っていて結果だけが「””」になっているセルは空白とは判定されません。

そのため、実務では「**見た目が空白なら空白扱いしたい**」のか、「**本当に未入力のセルだけを空白扱いしたい**」のかを分けて考えることが大切です。

多くの業務表では、見た目が空白のものを空白として扱いたい場面が多いため、「**A1=””**」を使うほうが自然です。

一方、入力漏れチェックのように「セルに数式や文字が何か入っているか」を厳密に確認したい場合は、ISBLANK関数が役立ちます。

IF関数以外で空白表示にする方法

参照セルが空白のときに0を表示したくないだけであれば、IF関数以外の方法もあります。

「&””」を付ける方法

代表的なのが、数式の最後に「**&””**」を付ける方法です。

たとえば「=A1」では空白参照が0と表示される場合でも、「**=A1&””**」とすると空白のまま表示されることがあります。

これは、アンパサンド「&」が文字列を結合する演算子であり、空文字列「””」を結合することで結果を文字列として扱わせるためです。

シンプルに見た目を整えたいだけなら、IF関数より短く書ける便利な方法です。

注意点

ただし、「&””」には注意点もあります。

結果が**文字列扱い**になるため、数値として再計算したい列では不都合が出ることがあります。

たとえば金額や数量を後からSUM関数で集計したい場合、文字列化された値が期待通りに集計されないことがあります。

見た目を空白にする目的では便利ですが、その列をさらに計算に使うなら、IF関数で必要なときだけ数値を返す形にしたほうが安全です。

表示形式で0を非表示にする方法

もう一つの方法は、セルの**表示形式**で0を表示しないようにすることです。

ユーザー定義の表示形式を使えば、セルの値は0のままでも画面上は空白に見せられます。

この方法は、数式の結果を変えずに見た目だけを整えたい場合に向いています。

ただし、セルの中身は0のままなので、他の計算や条件判定では0として扱われます。

見た目と実際の値が違う状態になるため、複数人で使うファイルでは説明やルール化が必要です。

実務での使い分けまとめ

迷ったときは、次の基準で選ぶと判断しやすくなります。

| 目的 | おすすめの方法 |
|——|—————|
| 空白なら処理しない、空白でなければ計算する | `=IF(A1=””,””,計算式)` |
| 参照結果の0表示だけを手早く避けたい | `=A1&””` |
| 値は残したまま印刷や見た目だけ整えたい | 表示形式で0を非表示 |

最も汎用的で後から見ても意図が分かりやすいのは、やはりIF関数を使った「**=IF(A1=””,””,A1)**」の形です。

特に、請求書、納品書、一覧表、基幹システムからのデータ変換フォーマットでは、数式の目的が明確であることが大切です。

「空白のときは空白、入力があるときは表示または計算」という流れが数式から読み取れるため、ファイルを引き継いだ人にも伝わりやすくなります。

Excelの空白処理は小さな工夫ですが、余計な0やエラーを減らし、表の見やすさと業務の正確性を高める基本テクニックです。

ぜひ活用してみてくださいね!

広告