Contents
スプレッドシートのIFERROR関数とは
スプレッドシートのIFERROR関数とは、エラーが発生した場合の処理を記載するための関数です。具体的には「DIV/0!」「#N/A」「#VALUE!」のようなエラーが出た際に、空欄や0を表示する設定ができます。
IFERROR関数の構文
=IFERROR(値, エラーの場合の値)
- 値:エラーか判定したい文字列やセル
- エラーの場合の値:「値」がエラーのときに表示する値
IFERROR関数の使い方
IFERROR関数は、エラーが表示するか判定したい値とエラー発生時の表示指定が必要です。たとえば、下図のように「#DIV/0!」が発生したとします。
これをくくり「=IFERROR(10/0,”エラー”)」のように記載すると、エラーが発生した際に「エラー」と表示してくれます。
「=IFERROR(10/0)」のように、2つめの「エラーの場合の値」を指定しない場合にはエラー時に空白となります!
エラー以外の場合はそのまま表示
もし「=IFERROR(値, エラーの場合の値)」の「値」がエラーでない場合には、その値がそのまま表示されます。
[例]VLOOKUP関数でエラーになったときの表示を設定
IFERROR関数はVLOOKUP関数と組み合わせて使うケースが多いです。たとえば下図のリストから特定の図鑑ナンバーに該当する名前をVLOOKUPしたいとしましょう。
このとき、「=IFERROR(VLOOKUP(6,A:B,2,FALSE),”データなし”)」のように記載すると、VLOOKUPはいつもどおりできます。
また「=IFERROR(VLOOKUP(25,A:B,2,FALSE),”データなし”)」のように記載すると、エラーになった場合でもエラー表示ではなく指定した文字列を表示してくれます。
VLOOKUP関数とIFERROR関数を組み合わせる理由
IFERROR関数はAVERAGE関数のように、列全体に対して関数をかけている場合にエラーとなるのを防いでくれます。たとえば下図はA列全体へSUM関数を使っていますが、A11セルがエラーになっているので、意図した値を返してくれません。
そこで、A11セルに「=IFERROR(5/0,0)」のようにIFERROR関数を入れてエラーにならないように設定します。
こうすれば裏側でエラーが出ていたとしても、SUM関数ではそのエラーが出ているセルを無視して意図した数値を返してくれます。このようにエラーが出ていたとしても、無視して計算してほしいときにIFERROR関数が有効なため、エラーの出やすいVLOOKUP関数とは相性がよいです。
上記では例のため、1つのセルにのみIFERRORを設定していますが、実務ではエラーがでない前提で計算したいセル全体にIFERROR関数を設定しておくのが無難です!