IFERROR関数で#N/Aエラーや#DIV/0!を見やすく処理する方法
これらのエラーは数式に問題があるというよりも、「データがまだ入っていない」「条件に合わない」などで一時的に表示されることが多いです。
そんなときに活躍するのが IFERROR関数 です。この記事では、IFERROR関数の基本的な使い方から、実際の応用例、似た関数との違いまでをわかりやすく解説します。
IFERROR関数とは?
IFERROR関数は、数式の結果がエラーだった場合に、代わりの値やメッセージを表示する関数です。
基本構文は以下の通りです。
=IFERROR(数式, エラーのときに返す値)
たとえば、検索で見つからなかった場合に「該当なし」と表示させたい場合は以下のように書きます。
=IFERROR(VLOOKUP("みかん", A2:B10, 2, FALSE), "該当なし")
よくあるエラーの種類と発生例
IFERROR関数を使う場面を理解するには、まずよく出るエラーの種類を知っておくことが重要です。
- #N/A: 検索結果が見つからない(例:VLOOKUPで一致する値がない)
- #DIV/0!: ゼロで割ってしまった(例:売上 ÷ 件数が 0 件のとき)
- #VALUE!: 不正な型(例:文字列と数値を足そうとした)
これらのエラーは、計算や表示の邪魔になったり、他の数式にも影響したりします。
IFERROR関数の基本的な使い方
空欄を表示したい場合
「まだデータが未入力で、一時的にエラーが出るだけ」の場合、エラー時には空欄を表示させると見た目がすっきりします。
=IFERROR(A2/B2, "")
カスタムメッセージを表示する
エラーの理由をユーザーに明示したい場合は、説明メッセージを表示させることもできます。
=IFERROR(VLOOKUP("りんご", A2:B10, 2, FALSE), "データが見つかりません")
実例で理解:VLOOKUPや割り算にIFERRORを使う
VLOOKUPで該当データがないとき
=VLOOKUP("バナナ", A2:B5, 2, FALSE)
この関数で「バナナ」が見つからない場合、#N/Aが返されます。
IFERRORで処理するとこうなります:
=IFERROR(VLOOKUP("バナナ", A2:B5, 2, FALSE), "なし")
割り算でゼロ除算エラーを防ぐ
=A2/B2
このとき、B2が0なら#DIV/0!になります。IFERRORを使うと:
=IFERROR(A2/B2, "")
「0件のときは空欄にする」といった実務でよく使われるパターンです。
IFERRORとIFNAやISERRORとの違い
似たような関数に IFNA関数 や ISERROR関数 もあります。
- IFERROR: すべてのエラーを対象にする(#N/A, #DIV/0!, #VALUE!など)
- IFNA: #N/Aだけ を処理する(他のエラーは無視)
- ISERROR: エラーかどうかを判定し、TRUE/FALSEを返す
用途に応じて使い分けると、より細かく制御できますが、基本的にはIFERRORが最も汎用的です。
エラーを見せないことで、読みやすく、伝わりやすく
スプレッドシートでのエラー表示は、データが未入力なだけでも目立ってしまい、誤解を生むことがあります。
IFERROR関数を使うことで、エラーを適切に処理し、見やすく、整った表現に変えることができます。
VLOOKUPや割り算など、実務の中で出やすい場面で活用して、ストレスの少ない表作成を目指しましょう。