エクセルで計算式を入れていると、セルに「#N/A」「#NUM!」「#REF!」などが表示され、表全体が見にくくなることがあります。
エラーは数式や参照先の問題を知らせる重要なメッセージですが、集計表や報告書では必要な箇所だけを空白や別の文字に置き換え、見やすく整える工夫も必要です。
特にVLOOKUP関数、XLOOKUP関数、割り算、順位付け、グラフ用データでは、意図しないエラー表示をそのままにすると、利用者に誤解を与えるかもしれません。
エクセルのエラーを表示しない基本は、IFERROR関数で数式を包むことです。
ただし、#N/A、#NUM!、#REF!は原因が異なるため、表示だけを消す前に発生理由を確認することが大切です。
この記事では、エラーを非表示にする数式、空白表示にする方法、NA関数の使い分け、参照エラーへの対処を順番に解説します。
サンプルデータは1行目を見出し行とし、2行目から実データが入っている前提で説明します。
エクセルでエラーを表示しない方法1【IFERROR関数による空白表示】

| A | B | C |
|---|---|---|
| 商品コード | 売上 | 検索結果 |
| A001 | 1200 | 商品A |
| A999 | 未入力 | 空白にする |
それではまず、IFERROR関数を使って計算結果のエラーを空白にする方法について解説していきます。
IFERROR関数は、通常ならエラーになる数式を実行し、エラーが出たときだけ指定した値を返す関数です。
IFERROR関数の基本構文
IFERROR関数の構文は、IFERROR(値,エラーの場合の値)です。
=IFERROR(元の数式,””)
1つ目の引数には、実行したい計算式や検索式を入力します。
2つ目の引数には、最初の引数がエラーになったときに表示したい内容を入力します。
空白を返したい場合は、半角の二重引用符を続けて入力した「””」を指定します。
たとえばC2セルでA2の商品コードを検索する数式が、=VLOOKUP(A2,$F$2:$G$10,2,FALSE)であるとします。
この式をIFERRORで包むと、=IFERROR(VLOOKUP(A2,$F$2:$G$10,2,FALSE),””)となります。
検索対象に商品コードが存在すると商品名が表示され、存在しない場合は#N/Aではなく空白になります。
エラーそのものを削除するのではなく、画面上で別の結果として見せる仕組みである点が重要です。
空白と任意のメッセージの使い分け
IFERROR関数の2つ目の引数は、必ずしも空白にする必要はありません。
データが未登録であることを表したいなら、「該当なし」や「確認中」といった文字列を返すこともできます。
=IFERROR(VLOOKUP(A2,$F$2:$G$10,2,FALSE),”該当なし”)
社内用の管理表では、空白よりも「未登録」と表示したほうが、データを追加すべき場所に気付きやすい場合があります。
一方で、提出用の一覧表や印刷資料では、不要な文字を増やさず空白にするほうが自然です。
同じ数式でも、見る人と表の目的によって表示内容を選びましょう。
ただし、「エラー」と表示すべき状況まで空白にすると、入力ミスや参照範囲の不備を見落とす原因になります。
作成途中の表では「要確認」、完成版では空白というように、用途別に数式を使い分ける考え方も有効です。
オートフィルによる数式コピー
サンプルデータのC2セルにIFERRORを含む数式を入力したら、下方向へオートフィルして各行にコピーします。
数式内で検索表を固定する範囲には、$F$2:$G$10のように絶対参照を使います。
絶対参照にしない場合、数式を下へコピーするたびに検索範囲までずれ、正しい値を取得できなくなることがあります。
操作はC2セルを選択し、セル右下の小さな四角であるフィルハンドルを下へドラッグします。
隣接列に連続データがある場合は、フィルハンドルをダブルクリックしても入力範囲の末尾までコピーできます。
先頭セルの数式だけを正しく完成させてからコピーすることが、表を安定させる近道です。
【操作のポイント】検索範囲はF4キーで絶対参照に切り替え、C2セルの結果を確認してからオートフィルします。
IFERROR関数で非表示にできるエラーの種類

| エラー表示 | 主な原因 | IFERROR後の表示例 |
|---|---|---|
| #N/A | 検索値が見つからない | 空白 |
| #NUM! | 計算不能な数値 | 要確認 |
| #REF! | 参照先の削除 | 空白ではなく修正 |
続いては、IFERROR関数が対象にする代表的なエラーの種類を確認していきます。
IFERROR関数は複数種類のエラーをまとめて処理できる便利な関数ですが、原因まで同じになるわけではありません。
#N/Aエラーと検索結果の不一致
#N/Aは、VLOOKUP関数やXLOOKUP関数、MATCH関数などで検索値が見つからないときに表示されるエラーです。
たとえばA2に入力された商品コードが検索表に存在しなければ、完全一致で検索したVLOOKUP関数は#N/Aを返します。
未登録の商品コードが入力される可能性を想定した一覧表なら、IFERRORによる空白表示は実用的です。
ただし、検索表に本来あるはずの商品コードまで#N/Aになる場合は、全角半角の違い、余分な空白、文字列と数値の形式差を疑います。
=IFERROR(XLOOKUP(A2,$F$2:$F$10,$G$2:$G$10),””)
XLOOKUP関数では、見つからない場合の値を第4引数として直接指定できます。
そのためXLOOKUPを使える環境では、=XLOOKUP(A2,$F$2:$F$10,$G$2:$G$10,””)のように書く方法もあります。
検索結果がないこと自体が正常な業務フローなら、#N/Aを空白へ置き換える意義は大きいでしょう。
#NUM!エラーと数値計算の条件
#NUM!は、数式に指定された数値が計算できる範囲を超えたときや、計算条件が成立しないときに表示されます。
代表例は、負の数に対してSQRT関数で平方根を求めた場合です。
=IFERROR(SQRT(B2),””)
B2が正の数または0なら平方根が表示され、負の数なら空白になります。
しかし、負の数が入力された理由まで解消されたわけではありません。
在庫数や金額など、本来は負にならない数値を扱う表なら、空白で隠すよりも入力値を確認する運用が必要です。
条件により計算しないようにするなら、IF関数を先に使う方法もあります。
=IF(B2<0,””,SQRT(B2))とすれば、負の数のときはSQRT関数を実行しません。
原因が明確に分かっている場合は、IFERRORだけに頼らず、条件式で計算対象を制御する設計が適しています。
#DIV/0!エラーと割り算の処理
#DIV/0!は、割る数が0または空白のときに表示されるエラーです。
売上金額を販売数で割って単価を求める表では、販売数が未入力の行で起こりやすいエラーです。
C2に売上、D2に販売数がある場合、単価を求める基本式は=C2/D2となります。
=IFERROR(C2/D2,””)
この数式なら、D2が0または空白のときに空白を返せます。
一方で、D2が0の理由が「まだ販売していない」なのか「入力を忘れた」のかにより、必要な表示は変わります。
販売実績がないことを明示するなら、=IF(D2=0,”販売なし”,C2/D2)のような数式も検討できます。
数値計算の表では、空白、0、該当なしの意味を混同しないことが、後の集計ミスを防ぎます。
【操作のポイント】エラーコードを確認し、正常な未入力なのか数式や元データの不備なのかを分けて処理します。
NA関数とIFNA関数の使い分け

| A | B | C |
|---|---|---|
| 月 | 実績 | グラフ用値 |
| 4月 | 150 | 150 |
| 5月 | 未確定 | #N/A |
続いては、NA関数とIFNA関数を使い、#N/Aを意図的に扱う方法を確認していきます。
すべてのエラーを消せばよいとは限らず、グラフや分析のために#N/Aを残すほうが適した場面もあります。
NA関数で意図的に#N/Aを返す場面
NA関数は、#N/Aエラーを意図的に返すための関数です。
構文は=NA()であり、引数は必要ありません。
一見するとエラーを増やす関数に見えますが、グラフで未確定の数値を線で結ばせたくない場合に役立ちます。
=IF(B2=”未確定”,NA(),B2)
この式では、B2が「未確定」ならC2に#N/Aが入り、数値があればその数値を返します。
グラフは#N/Aをデータなしとして扱うため、存在しない数値を0として描画する誤解を避けやすくなります。
未集計、未確定、対象外を0と区別したいときにNA関数は有効です。
ただし、セルを直接見る利用者にはエラー表示に見えるため、表の用途を考えて使いましょう。
IFNA関数で#N/Aだけを置き換える方法
IFNA関数は、#N/Aエラーだけを指定した値に置き換える関数です。
構文はIFNA(値,値が#N/Aの場合)です。
=IFNA(VLOOKUP(A2,$F$2:$G$10,2,FALSE),”未登録”)
IFERROR関数は#N/A以外の#REF!や#VALUE!などもまとめて置き換えます。
それに対しIFNA関数は、検索対象が見つからない#N/Aだけを処理し、別のエラーはそのまま表示します。
検索式の不一致だけを自然な文言に変え、数式の故障は見逃したくないときに向いています。
検索エラーだけを非表示にしたいなら、IFERRORよりIFNAのほうが原因を隠しにくいという利点があります。
VLOOKUPやMATCHを多用する台帳では、IFNAを標準にする判断も有効です。
グラフ表示と空白セルの注意点
グラフのデータに空白セルがある場合、折れ線グラフでは空白として扱うか、0として扱うか、線で結ぶかを設定できます。
設定によって見た目が変わるため、空白にしただけで必ずグラフから消えるとは限りません。
データの存在しない期間を明確に欠損として扱いたいときは、NA関数で#N/Aを返す方法が分かりやすい選択です。
逆に、表でエラー表示を見せたくない提出資料では、IFERRORやIFNAで空白にするほうが読みやすくなります。
数値の未入力を0に置き換えると、平均、合計、達成率といった集計結果に影響する可能性があります。
空白、0、#N/Aの違いは表示の問題だけでなく、集計とグラフの意味を左右するデータ設計でもあります。
【操作のポイント】グラフ用の元データでは、未確定値を0にせず、空白またはNA関数のどちらが適切かを決めます。
REFエラーの確認と数式修正
| A | B | C |
|---|---|---|
| 部門 | 売上 | 構成比 |
| 営業部 | 500000 | 25% |
| 開発部 | 300000 | 参照先を確認 |
続いては、#REF!エラーの原因を確認し、参照を修正する方法について解説していきます。
#REF!は参照エラーであり、IFERRORで見た目を消す前に、数式が何を参照しているかを確かめることが必要です。
#REF!エラーが発生する主な原因
#REF!は、数式が参照していたセル、列、行、シートが削除され、参照先を失ったときに表示されます。
たとえば=SUM(B2:B10)の計算範囲に関係する列を削除した場合や、別シートを参照する数式で元のシートを削除した場合に発生します。
数式バーを見ると、通常のセル番地の代わりに#REF!という文字が数式の一部に入っています。
この状態で=IFERROR(元の数式,””)とすると、画面からエラー文字は消せます。
しかし、計算結果まで空白になり、参照が壊れている事実も見えにくくなります。
#REF!は見栄えの問題ではなく、数式の参照先が失われた警告として扱うことが重要です。
数式バーを使った参照先の見直し
#REF!があるセルをクリックすると、数式バーに入力済みの数式を確認できます。
数式内の#REF!部分を、本来参照すべきセル範囲やシート名に修正します。
たとえば削除前に「集計」シートのB2を参照していたなら、=’集計’!B2のような正しい参照へ入力し直します。
元の参照先が分からない場合は、直前の操作を元に戻せるか確認します。
作業を保存していないなら、クイックアクセスツールバーの元に戻す操作で、削除前の状態へ復旧できることがあります。
すでに保存済みの場合は、ファイルのバージョン履歴、バックアップ、元データの構成を確認して参照先を再設定します。
参照の修正後は、数式をコピーした周辺セルにも同じ問題がないか確認しましょう。
参照エラーを防ぐ表の編集操作
数式が使われている表で列や行を削除する前には、どのセルがその範囲を参照しているかを確認します。
不要に見える列でも、別シートの集計表、グラフ、ピボットテーブル、名前の定義から参照されていることがあります。
単に項目を見せたくない場合は、削除ではなく列の非表示を使う方法もあります。
また、数式を変更する前にファイルを複製し、作業用ファイルで確認する習慣も役立ちます。
複数人で共有するブックでは、シート名や列の位置を安易に変えないルールを決めると安全です。
参照先を固定したい計算では、絶対参照、テーブル機能、名前の定義を活用する方法もあります。
【操作のポイント】#REF!を見つけたらIFERRORで隠す前に、数式バーで失われた参照先を修正します。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 部門 | 売上 | 構成比 | |
| 2 | 営業部 | 500000 | #REF! | |
| 3 | 開発部 | 300000 | 15% |
エラー表示を消す数式の注意点
| 確認項目 | 確認する内容 |
|---|---|
| 元データ | 空白、文字列、形式の違いがないか |
| 参照範囲 | 絶対参照と検索範囲が正しいか |
| 表示内容 | 空白、0、該当なしの意味が適切か |
続いては、エラーを非表示にする数式を利用する際の注意点について解説していきます。
IFERRORは便利ですが、数式の問題まで見えなくすることがあるため、使う場所を見極める必要があります。
IFERRORで不具合を隠しすぎない考え方
IFERRORをすべての数式に付けると、入力ミス、参照先の削除、関数名の誤りなども空白として表示されます。
完成済みの提出資料では見栄えが整っても、作成者は異常の発見が遅れるかもしれません。
特に#REF!や#VALUE!は、本来なら調査すべきエラーです。
そのため、編集用シートでは元の数式を表示し、印刷用シートや表示専用シートだけでIFERRORを使う方法が適しています。
元データを扱う表と、利用者へ見せる表を分けるだけでも、エラー処理の安全性は上がります。
見せないための数式と、原因を見つけるための数式は役割が違うと考えましょう。
空白文字とゼロ表示の違い
IFERRORの2つ目の引数を””にすると、セルには空白文字列が返されます。
見た目は空欄ですが、数式が入っているセルとして扱われる点に注意が必要です。
COUNT関数は数値セルを数え、COUNTA関数は空白文字列を返すセルも数えることがあります。
また、合計や平均の対象にする範囲、ピボットテーブル、グラフの処理でも結果が変わる場合があります。
0を返す数式は、計算上は明確な数値として扱われます。
空白と0のどちらを選ぶかは、「値が存在しない」のか「値は0である」のかという業務上の意味で決めることが大切です。
=IFERROR(C2/D2,0)
この式は集計を優先したい場合に便利ですが、未入力を0と誤解させないよう表題や注記にも配慮します。
数式の検証とエラーチェック
数式を作成した直後は、正常データだけでなく、空白、0、存在しない検索値、負の数なども入力して結果を確認します。
エクセルの数式タブにあるエラーチェックを使うと、周囲の数式と異なるセルやエラーの可能性を確認できます。
検索関数では、検索値と検索表のデータ形式をそろえることも重要です。
数字に見えても、一方が文字列、一方が数値で保存されていると完全一致検索で見つからないことがあります。
TRIM関数で余分な空白を除去したり、VALUE関数で文字列の数字を数値へ変換したりする方法もあります。
IFERRORを加える前に元の式を検証すれば、エラーを正しく処理しながら計算の信頼性も保てます。
【操作のポイント】作成途中はエラーを見える状態にし、表示専用の表へ仕上げる段階でIFERRORを追加します。
まとめ エクセルのエラーを表示しない方法
エクセルのエラーを表示しない方法では、まずエラーの種類と発生原因を分けて考えることが重要です。
VLOOKUP関数やXLOOKUP関数で検索値が見つからない#N/Aは、IFNA関数やIFERROR関数で空白、未登録、該当なしなどに置き換えられます。
#DIV/0!や#NUM!は、計算前の条件をIF関数で確認するか、IFERRORで表示を整える方法が使えます。
一方、#REF!は削除されたセルやシートを参照している可能性が高いため、非表示にする前に数式バーで参照先を修正することが必要です。
グラフの欠損値を扱う場合は、空白、0、NA関数が返す#N/Aで意味が変わります。
表の目的に合わせて表示方法を選べば、読みやすさとデータの正確さを両立できます。
まずは元の数式が正しいことを確認し、そのうえでIFERROR、IFNA、NA関数を使い分けましょう。