参照先が未入力のセルを参照した際、エクセルが勝手に「0」を表示してしまう現象は、数式側で制御するのが最も確実です。見積書や請求書など、行単位でデータを追加していく帳票では、エクセル 計算結果 0 表示させないための関数組み込みが欠かせません。
最も王道となるのがエクセル IF関数 0 空白の組み合わせです。たとえば、セルA1の値を参照する場合、通常の「=A1」ではなく以下のように記述します。
=IF(A1="","",A1)
この数式を組むことで、「もし参照元のA1セルが空白であれば、結果も空白("")を返し、値があればそのまま表示する」という論理処理が成立します。
また、マスターデータから商品名や単価を抽出する際、エクセル VLOOKUP 0 空白にする処理も必須スキルの一つです。通常のVLOOKUP関数では、参照先セルが空白の場合に「0」が返されてしまいます。これを回避するには、末尾に「&""」を結合するか、IF関数と組み合わせる手法が有効です。
- 文字列の空白化(簡易型):=VLOOKUP(検索値, 範囲, 列番号, FALSE) & ""
- 数値属性を維持する厳密型:=IF(VLOOKUP(検索値, 範囲, 列番号, FALSE)="","",VLOOKUP(検索値, 範囲, 列番号, FALSE))
文字列の結合(&"")は手軽ですが、抽出結果が文字列型に変換されてしまうため、後工程で四則演算を行う列では必ずIF関数による厳密な分岐を行ってください。