【Excel】VLOOKUPの空欄が0になる時の対処|未入力と数値0を分ける

【Excel】VLOOKUPの空欄が0になる時の対処|未入力と数値0を分ける
🛡️ 超解決

VLOOKUPで見つかった行の戻り先が未入力だと、結果に0が出ることがあります。これを消す前に、未入力と数値の0を区別したいのか、すべての0を見えなくしたいのかを決めます。在庫0や金額0まで隠すと、資料の意味が変わってしまいます。

ADVERTISEMENT

1. 未入力・数値0・見つからない状態を分ける

コードが一致して戻り先だけ空欄なのか、コードそのものが見つからないのかを確認します。完全一致の検索でコードがなければ通常は#N/Aです。空欄に見えるセルでも、数式の空文字やスペースが入っている場合があります。

同じ0表示でも、元データ未入力と入力済み0では意味が違う。未入力のみ空欄、数値0は0、コード未登録は確認対象として残す。
0を一律に隠すと、情報がない状態と確認済みのゼロを区別できなくなります。
元データの状態 残したい意味
未入力 まだ情報がない
数値の0 確認した結果がゼロ
検索コードがない 検索先や入力の確認が必要
※ お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. 未入力かどうかは戻り先のセルで判定する

A列がコード、B列が値、E2が検索値なら、補助セルF2で=MATCH(E2,A2:A100,0)として一致位置を求めます。見つかった場合に、=ISBLANK(INDEX(B2:B100,F2))で戻り先が本当に未入力か確認できます。

表示用の式は次のとおりです。

=IF(ISBLANK(INDEX(B2:B100,F2)),"",INDEX(B2:B100,F2))

未入力だけ空文字で表示し、入力済みの数値0は残します。F2の#N/Aは別途確認してください。検索範囲と戻り範囲は同じ行に対応させます。

3. 空文字を返す数式と未入力は同じではない

元セルに=""などの式が入っていると、見た目は空欄でもISBLANKはFALSEになります。上の表示用の式なら元の空文字をそのまま返しますが、集計や空欄判定では未入力と異なる扱いになることを覚えておきましょう。

スペースだけのセルは空文字でもありません。表示の0を消す作業と、元データの入力漏れを整理する作業を分けると、原因を見失いません。

4. すべての0を隠すだけなら表示形式を使う

0を一律に非表示にしてよい範囲では、Ctrl+1で「セルの書式設定」を開き、「ユーザー定義」に0;-0;;@を指定できます。正数、負数、ゼロ、文字列の順に表示を指定し、3番目を空にした例です。

この書式は整数表示の例なので、小数を見せる列にはそのまま使わず桁数を調整します。値そのものは0のままです。また#;;;@のように負数の欄まで空にすると、負の金額も見えなくなるため注意してください。

5. 文字列化やIFERRORで一括処理しない

数式に&""を加える方法は、数値の結果も文字列へ変えます。金額や数量を集計する列では、SUMが文字列を無視するなどの影響を避けるため、型を維持する設計にしてください。

IFERRORで全部を空欄にすると、未入力だけでなく参照切れや未検出も隠れます。先に検索が成功していることを確認し、表示方法を決めます。

6. 4種類のデータで結果を検査する

未入力、0、正の数、未登録コードを用意し、それぞれ意図した表示になるか確認します。負数や小数を扱う表なら、それも加えます。見た目を整えた後も、合計と未入力件数が変わっていないか照合してください。

参考: Microsoft公式: ゼロ値の表示と非表示、INDEX・MATCHによる検索

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。
この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】