Excelで数式を入力したとき、セルに「#N/A」や「#DIV/0!」が突然表示されて困ったことはありませんか?
エラーが並んだまま資料を提出するのは、やはり気まずいものでしょう。実は、IFERROR関数を使えば、こうしたエラーをわずか1行で非表示にできます。任意のメッセージに置き換えることも可能です。
この記事では、IFERROR関数の基本的な書き方から、VLOOKUPや割り算との組み合わせまで、実務ですぐ使える具体例をまとめました。
「エラーを消したいけど書き方がわからない」という方は、ぜひ参考にしてみてください。
IFERROR関数とは?基本の書き方を確認しよう
IFERROR関数は、数式がエラーになったときだけ、代わりの値を返す関数です。正常に計算できた場合はそのまま結果が表示され、エラーのときだけ指定した値に切り替わります。
エラー処理関数の中でもとくに使用頻度が高く、覚えておくと資料作成のスピードが変わるはずです。
IFERROR関数の構文と引数
書き方はシンプルで、引数はたったの2つしかありません。
IFERROR関数が対応しているエラーの種類
IFERROR関数は、Excelで発生するすべてのエラー値をまとめて処理できます。個別に条件分岐を書かなくてよい点が大きなメリットでしょう。
| エラーの種類 | 主な原因 | よくある場面 |
|---|---|---|
| #N/A | 検索値が見つからない | VLOOKUPでリストに無いとき |
| #DIV/0! | 0(または空白)で割り算している | 達成率・単価計算 |
| #VALUE! | データ型が合っていない | 文字と数値で四則演算したとき |
| #REF! | 参照先のセルが削除された | 参照元の行・列を削除した後 |
| #NAME? | 関数名のスペルミス | 全角スペースの混入など |
| #NUM! | 計算結果が数値の範囲外 | SQRT関数に負の数を入れたとき |
| #NULL! | 交差しない2つの範囲を指定 | カンマを忘れてスペースで区切ったとき |
エラーの種類ごとに原因や直し方を知りたい場合は、Excel関数エラーの原因と直し方|#VALUE!・#REF!・#NAME?症状別逆引きもあわせてご覧ください。
IFERROR関数の使い方3パターン【コピペOK】
ここからは、もっともシンプルなIFERROR関数の書き方を見ていきましょう。
エラーが出たとき「どう表示させるか」によって、第2引数の書き方が変わります。
パターン①:エラーを空白にする
=IFERROR(A1/B1, "")""(ダブルクォーテーション2つ)にすると、エラー時に何も表示されません。見た目をスッキリさせたいときに便利です。パターン②:エラーを文字に置き換える
=IFERROR(VLOOKUP(D2,A:B,2,0), "未登録")パターン③:エラーを0(ゼロ)にする
=IFERROR(A1/B1, 0)
IFERROR関数のよくある入力ミスと対処法
IFERROR関数がうまく動かない場合、次のような入力ミスが原因であるケースがほとんどです。
| 症状 | 原因 | 対処法 |
|---|---|---|
| #NAME? が出る | 関数名やダブルクォーテーションが全角になっている | すべて半角に直す |
| 数式がそのまま表示される | セルの表示形式が「文字列」になっている | 表示形式を「標準」に戻し、F2→Enterで再確定 |
| 正常な値もエラー扱いになる | 第1引数の数式自体が間違っている | IFERRORを外して元の数式を単体で確認する |
数式がセルにそのまま文字として表示されてしまう場合は、Excel数式が表示されるだけで計算されない原因と直し方【症状別逆引き】で詳しく解説しています。
実務で使えるIFERROR関数の具体例5選
IFERRORの使いどころは「VLOOKUP・割り算・IF・SUM・ネスト」の5パターンに集約されます。
① VLOOKUPの#N/AエラーをIFERRORで消す
IFERROR関数との組み合わせでもっとも多いのが、VLOOKUPとの連携です。商品マスタや従業員名簿を参照するとき、検索値がリストになければ「#N/A」が表示されてしまいます。
VLOOKUPのエラーをもっと詳しく調べたい場合は、VLOOKUPエラーの原因と直し方|#N/A・結果が0・コピーでズレる対処法もあわせてどうぞ。また、XLOOKUPへの乗り換えを検討している方はXLOOKUPとVLOOKUPの違いを徹底比較|どっちを使えばいい?【2026】が参考になるはずです。
② 割り算の#DIV/0!をIFERRORで処理する
売上達成率や単価計算など、割り算を使うシートで頻繁に発生するのが「#DIV/0!」エラーです。分母のセルが空欄や0のときに起こり、シートの見た目が崩れてしまいます。
=C2/B2=IFERROR(C2/B2, "−")③ IFとIFERRORを組み合わせる
「エラーのときは空白、値があれば○か×を表示したい」ような場面では、IFとIFERRORを組み合わせましょう。処理の順番を意識するのがポイントです。
=IFERROR(IF(C2>=B2, "達成", "未達"), "−")④ エラーを除外して合計する正しい方法
範囲内にエラーが含まれていると、SUMの結果まで「#N/A」になってしまうことがあります。Excel 365やExcel 2021以降であればIFERRORとSUMを組み合わせて処理できますが、古いバージョンでは計算が壊れる場合があります。
バージョンを問わず安全にエラーを無視して合計するには、AGGREGATE関数がおすすめです。
=AGGREGATE(9, 6, A1:A10)⑤ IFERRORを2重にネストする(応用)
「VLOOKUPで見つからなければ別の表から探す」ように、複数の参照先を順番に試したいケースでは、IFERRORのネスト(入れ子)が使えます。
=IFERROR(VLOOKUP(D2, A:B, 2, 0), IFERROR(VLOOKUP(D2, E:F, 2, 0), "未登録"))IFERROR関数を使うときの落とし穴と注意点
IFERRORはとても便利な関数ですが、使い方次第では思わぬ落とし穴にはまることもあります。
本来のエラーが隠れてデバッグしにくくなる
IFERRORで囲むと、数式そのものに問題があってもエラーが見えなくなります。たとえば参照先のセル番地を間違えていても「未登録」と表示されるだけで、ミスに気づけないことがあるでしょう。
筆者も以前、参照範囲を1列ズラしたまま気づかず、上司に提出する直前にデータの不整合を指摘されたことがあります。数式の作りこみ段階ではIFERRORを外してテストし、完成後に包むという手順を意識してみてください。
IFERROR・ISERROR・IFNAの違い
似た名前の関数が複数あるため、混乱しやすいポイントです。それぞれの役割を表で整理しておきましょう。
| 関数 | 役割 | 使い分け |
|---|---|---|
IFERROR |
エラーなら代替値を返す | 表の見た目を整えたいとき |
ISERROR |
エラーかどうかをTRUE/FALSEで返す | エラー判定を条件分岐に使いたいとき |
IFNA |
#N/Aだけを代替値にする | VLOOKUPで#N/Aのみ処理したいとき |
#N/Aだけをピンポイントで処理したい場合は、IFNA関数のほうが意図が明確になります。IFERRORだと#REF!や#VALUE!まで巻き込んでしまうため、VLOOKUPの検索ミスだけを対象にしたいならIFNAを選ぶのがおすすめです。
Q&A【よくある疑問まとめ】
まとめ|IFERRORでExcelの見た目を整えよう
IFERROR関数のポイントをおさらいします。
- 書き方は
=IFERROR(値, エラーの場合の値)の2引数構成 - #N/A・#DIV/0!・#VALUE! などすべてのエラーを一括処理できる
- VLOOKUPや割り算との組み合わせが実務でとくに役立つ
- XLOOKUPには標準でエラー処理が備わっているため併用不要
- 合計時のエラー除外にはAGGREGATE関数が安全
- #N/Aだけを処理したいならIFNA関数を選ぶのがおすすめ
- エラーを隠しすぎると数式ミスに気づきにくくなるため注意
書き方を一度覚えてしまえば、あとは応用するだけです。「エラーが出るたびに手動で消していた」という方は、ぜひ今日からIFERROR関数を取り入れてみてください。資料の見た目がぐっと整い、作業時間の短縮にもつながるはずです。