IFERRORでExcelのエラーを消す!基本の書き方と実務で使える具体例【保存版】

スポンサーリンク
スポンサーリンク

Excelで数式を入力したとき、セルに突然「#N/A」や「#DIV/0!」が表示されて困った経験はありませんか?

 

エラー表示のまま上司に資料を提出するのは、なかなか気まずいものです。実は、IFERROR関数を使うと、こうしたエラーをわずか1行で非表示にしたり、任意のメッセージに置き換えたりできます。

 

この記事では、IFERROR関数の基本的な書き方から、VLOOKUP・割り算・IFとの組み合わせまで、実務ですぐ使える具体例をまとめました。

 

「エラーを消したいけど、どう書けばいいかわからない」という方はぜひ最後まで読んでみてください。

スポンサーリンク

IFERROR関数とは?エラー処理の基本を理解しよう

IFERROR関数は、数式がエラーになったときだけ、代わりの値を表示させる関数です。

正常に計算できるときは通常の結果が表示され、エラーのときだけ指定した値に切り替わります。

エラー処理の中でも使用頻度がとくに高く、覚えておくと資料作成のスピードが大きく変わります。

IFERROR関数の構文と引数

書き方はシンプルで、引数は2つだけです。

IFERROR関数の書き方

=IFERROR(, エラーの場合の値)
第1引数|値
チェックしたい数式や計算式。エラーでなければ、この計算結果がそのまま表示されます。
第2引数|エラーの場合の値
エラーだったときに表示する値。「”−”」「””(空白)」「0」など自由に設定できます。

IFERROR関数が対応しているエラーの種類

IFERROR関数は、Excelで発生するあらゆるエラー値をまとめて処理できます。
個別に条件分岐を書く必要がなく、1つの関数で対応できる点が大きなメリットです。

エラーの種類 主な原因 よくある場面
#N/A 検索値が見つからない VLOOKUPでリストに無い時
#DIV/0! 0(または空白)で割り算している 達成率・単価計算
#VALUE! データ型が合っていない 文字と数値で四則演算した時
#REF! 参照先のセルが削除された 参照元の行・列を削除した後
#NAME? 関数名のスペルが違う 入力ミス・全角スペースの混入
#NUM! 計算結果が数値の範囲外 SQRT関数に負の数を入れた時
#NULL! 交差しない2つの範囲を指定 カンマ(,)を忘れてスペースで区切った時

エラーの種類ごとに原因や直し方を深掘りしたい場合は、Excel関数エラーの原因と直し方|症状別逆引きもあわせてご覧ください。

スポンサーリンク

【コピペOK】IFERROR関数の基本的な使い方と書き方

まずは、もっともシンプルなIFERROR関数の書き方から見ていきましょう。

 

エラーが出たとき「どう表示させるか」によって、第2引数の書き方が変わります。自分の用途に合った書き方を選んでみてください。

 

エラー表示の切り替えパターン

パターン①
エラーを空白にする
=IFERROR(A1/B1, “”)
第2引数を ""(ダブルクォーテーション2つ)にすると、エラー時は何も表示されません。

パターン②
エラーを文字に置き換える
=IFERROR(VLOOKUP(D2,A:B,2,0), “未登録”)
文字を表示したいときは、第2引数をダブルクォーテーションで囲んで記述します。

パターン③
エラーを0(ゼロ)にする
=IFERROR(A1/B1, 0)
集計やSUM関数で合計したい場合は、0を指定しておくと計算がスムーズになります。
⚠️ 注意点
エラーを0や空白にすると、本来あるべき数式のミスまで隠れてしまいます。まずは数式単体でテストし、正しく動くことを確認してからIFERRORで囲むのが基本です。

IFERROR関数のよくある入力ミスと対処法

IFERROR関数でうまく動かないときは、以下の入力ミスが原因であることがほとんどです。

 

症状 原因 対処法
#NAME? が出る 関数名が全角になっている 半角で =IFERROR( と入力する
エラーが消えない カッコの数が合っていない 最後が ) で閉じられているか確認する
文字が「”未登録”」のまま出る ダブルクォーテーションが全角 半角の "" で囲み直す
正常な値もエラー扱いになる 第1引数の数式が間違っている IFERRORを外して、元の数式を単体で直す
スポンサーリンク

IFERROR関数の実務で使える具体例5選

IFERRORの使いどころは「VLOOKUP・割り算・IF・SUM・ネスト」の5パターンに集約されます。

実際の業務シーンを想定しながら、1つずつ確認していきましょう。

① VLOOKUPの#N/AエラーをIFERRORで消す

IFERROR関数との組み合わせでもっとも多いのが、VLOOKUPとの組み合わせです。

 

商品マスタや従業員名簿を参照するとき、検索値がリストに存在しないと「#N/A」が出てしまいます。

 

IFERROR + VLOOKUP の比較

❌ 修正前(エラーが出る)
=VLOOKUP(D2, A:B, 2, 0)
D列(検索値)
結果
商品A
1,200円
商品X
#N/A

✅ 修正後(スッキリ表示)
=IFERROR(VLOOKUP(D2,A:B,2,0), “未登録”)
D列(検索値)
結果
商品A
1,200円
商品X
未登録

 

※注意:XLOOKUP関数を使う場合
最新のXLOOKUP関数には、第4引数に「見つからない場合」の処理が標準で組み込まれています。=XLOOKUP(D2, A:A, B:B, "未登録") と書けるため、XLOOKUPをIFERRORで囲む必要はありません。

② 割り算の#DIV/0!をIFERRORで処理する

売上達成率や単価計算など、割り算を使うシートでは「#DIV/0!」がよく発生します。

分母のセルが空欄や0のときに起こるエラーで、シートの見た目が崩れてしまうのが困りものです。

 

📌 書き方の例(達成率計算)
❌ エラーになる: =C2/B2
✅ 解決後: =IFERROR(C2/B2, "−")
B2(目標値)が0や空白でも「−」が表示されるので、シートが崩れません。

③ IFとIFERRORを組み合わせる

「エラーのときは空白、値があれば○か×を表示したい」というような場面では、IFとIFERRORを組み合わせます。処理の順番を意識することがポイントです。

📌 IFとIFERRORの組み合わせ例
=IFERROR(IF(C2>=B2, "達成", "未達"), "−")
IFの外側をIFERRORで囲む書き方が基本です。IFより先にエラーをキャッチできます。

④ SUMでエラーを除外して合計する正しい方法

範囲内にエラーが含まれていると、SUMの計算結果まで「#N/A」になってしまいます。最新のExcel 365や2021以降(スピル対応)であれば、IFERRORをそのまま噛ませて合計できますが、古いExcelでこれをやると計算が壊れます。

 

実務では、バージョンを問わず安全にエラーを無視できる「AGGREGATE関数」を使うのが定石です。

📌 エラーを除外して合計する(実務の正解)
=AGGREGATE(9, 6, A1:A10)
第1引数の「9」は合計(SUM)、「6」はエラー値を無視する、という意味です。
古いExcelから最新まで、最も安全かつ確実にエラーを飛ばして集計できます。

⑤ IFERRORを2重にネストする(応用)

「VLOOKUPで見つからなければ別の表からVLOOKUPで探す」というような、複数の参照先を順番に試したいケースでは、IFERRORをネスト(入れ子)にする方法が使えます。

📌 IFERRORを2重にネストした例
=IFERROR(VLOOKUP(D2, A:B, 2, 0), IFERROR(VLOOKUP(D2, E:F, 2, 0), "未登録"))
第1のVLOOKUPがエラーなら第2のIFERRORへ進み、両方になければ「未登録」を表示します。
スポンサーリンク

IFERROR関数を使うときの落とし穴と注意点

IFERRORはとても便利な関数ですが、使い方によっては思わぬ落とし穴にはまることも。ここでは実務でよくある注意点を整理します。

本来のエラーが隠れてデバッグしにくくなる

IFERRORを使うと、数式そのものに問題があってもエラーが見えなくなります。たとえば参照先のセルを間違えていても「未登録」と表示されるだけで、ミスに気づけないことがあるでしょう。

 

数式を作りこんでいる段階では、IFERRORを外した状態でテストするのがおすすめです。完成してから最後にIFERRORで包む、という順番を意識してみてください。

IFERROR関数とISERROR関数の違い

似た関数として「ISERROR」がありますが、役割は異なります。IFERRORは「エラーなら代替値を返す」という一体型の処理に対し、ISERRORは「エラーかどうか」をTRUE/FALSEで返す判定関数です。

 

関数 役割 使い分け
IFERROR エラーなら代替値を表示 表の見た目を整える場面
ISERROR エラーかをTRUE/FALSEで返す エラー判定を条件分岐に使う場面
IFNA #N/Aだけを代替値にする VLOOKUP専用で厳密に処理したい場面

 

#N/Aエラーだけを対象に処理したい場合は、IFNA関数を使うとより意図が明確になります。VLOOKUPで起きるエラーの種類をもっと詳しく知りたい方は、VLOOKUPエラーの原因と直し方|症状別逆引きもあわせてどうぞ。

スポンサーリンク

よくある質問

Q. IFERRORで空白にしたらAVERAGEの集計がおかしくなりました。
A. これはExcelの集計関数の仕様によるものです。IFERRORの第2引数を ""(空白文字列)にした場合、AVERAGE関数はそのセルを「数値」ではなく「文字列」として認識し、計算対象(分母)から完全に除外してしまいます。たとえば5個のデータのうち1個がエラーで空白になっていると、残りの「4個の平均」が計算されてしまい、期待より高い数値が出てしまうことがあります。エラーを「0」として平均に含めたい場合は、"" ではなく 0 を指定するのが正解です。私も以前、この集計のズレに気づかず報告数値を間違えそうになったことがありますが、関数の「無視ルール」を理解してからはミスがなくなりました。

Q. VLOOKUPをIFERRORで囲んでも#N/Aが消えません。
A. 引数や綴りに間違いがないのにIFERRORが効かない場合、セルの書式設定が「文字列」になっていることが原因のほとんどです。書式が文字列だと、入力したものが「数式」として認識されず、ただのテキストとして扱われてしまいます。対処法は、セルの書式を「標準」に変更してから数式を入力し直す(F2キーを押してEnterなど)ことです。私も過去に他人が作成したシートを流用した際、この「書式トラップ」にハマったことがありますが、標準に戻すだけで正常にエラー回避が機能しました。数式自体が表示されてしまう場合は、別記事の「数式が反映されない原因と直し方」も参考にしてください。
スポンサーリンク

まとめ|IFERRORを使いこなしてExcelの見た目を整えよう

IFERROR関数のポイントをおさらいします。

 

  • 書き方は =IFERROR(値, エラーの場合の値) のシンプルな2引数構成
  • #N/A・#DIV/0!・#VALUE! など全種類のエラーを一括処理できる
  • VLOOKUPや割り算との組み合わせが実務でとくに役立つ
  • XLOOKUPには標準でエラー処理が備わっているため併用不要
  • 合計時のエラー除外には、IFERRORではなくAGGREGATE関数を使う
  • エラーを隠しすぎると数式ミスに気づきにくくなるため注意

 

一度書き方を覚えてしまえば、あとは応用するだけです。「エラーが出るたびに手動で対処していた」という方は、ぜひ今日からIFERROR関数を取り入れてみてください。資料の見た目がぐっと整い、作業時間も短縮できるはずです。

 

Excelの関数まわりでまだ気になるエラーがある場合は、Excel関数エラーの原因と直し方|症状別逆引きもあわせてチェックしてみてください。

タイトルとURLをコピーしました