計算結果がエラーになったときに返す値を指定する方法(IFERROR関数)

普段の業務でスプレッドシートを使っていると、「#DIV/0!」や「#N/A!」、「#VALUE!」といった表示を見たことがある人は多いかと思います。
どれも計算結果が無効だったり、該当する値がなかったりする場合に表示されるエラー文言です。

そんなとき、役に立つのが今回ご紹介する「IFERROR関数」。
エラー文言を、別の文字列や空白セルに置き換えることができます。

計算が楽になったり、業務が効率化するようなものではありませんが、
「ひと手間加えるだけで、表の見た目がぐっと良くなる。」
IFERROR関数はそんな関数です。

覚えておくと資料作成で同僚に差をつけることができますよ。

今回は、GoogleスプレッドシートにおけるIFERROR関数の基本から応用、実例まで解説します。

こんな人におすすめ!
  • 「#DIV/0!」「#N/A!」「#VALUE!」といったエラー表示をなくしたい。
  • 計算結果がエラーになるときに、別の文字列を表示したい。
  • エラー表示ばかりのスプレッドシートをすっきりした見た目にしたい。

今日の公式

=IFERROR(, [エラー値])
項目説明
エラーかどうかチェックする数式を指定します。
エラーではなかった場合、この数式の結果が表示されます。
エラー値値で指定した数式がエラーだった場合に表示する値です。
指定しない場合は、空白を返します。

IFERROR関数の解説

下図の「売上管理表」を見てください。
この売上管理表のように「先に関数だけ組んで、あとで実績値を入力していく」なんて運用、よくやりますよね。

E9セルを見ると、客数が未入力(つまり0)のため、客単価を求める割り算で「#DIV/0!」というエラーが表示されてしまっています。
(「#DIV/0!」は、割り算の分母が0のときに表示されるエラーです。)

今回は、このようなエラー表示を別の文字列や空白セルに変更する方法を解説していきます。

1数式全体をIFERROR関数で囲む

まずは、エラーが出ている数式全体を、IFERROR関数で囲みます。

=IFERROR(C9/D9, [エラー値])

2数式がエラーだった場合に表示する値を指定する

次に、数式がエラーだった場合に表示する値を指定します。

  • 数字を返す
  • 文字列を返す
  • 空白にする

の3つそれぞれ記述の方法が少し違います。

まず、数字を返したい場合は、そのまま数字を記載します。

=IFERROR(C9/D9, 0)

次に、文字列を返したい場合は、「""(ダブルクォーテーション)」で文字列を囲います。
たとえば「未入力」と表示したい場合は、以下のように記述します。

=IFERROR(C9/D9, "未入力")

単純に空白セルにしたい場合は、空白の文字列を返すか、なにも指定しないかの二通りのやり方があります。

=IFERROR(C9/D9, "")
=IFERROR(C9/D9)

以上となります。

残りのセルにも同様にIFERROR関数を組み込むことで、エラー表示をなくすことができます。
※下の図では文字列「未入力」を返しています。

IFERROR関数の使用例

さて、IFERROR関数は、上記の解説以外にも活用することができます。

ここでは、IFERROR関数のよくある使用例をご紹介します。

1割り算と組み合わせる

解説でも紹介した割り算と組み合わせるケースです。

  • 客単価を計算する式を組んだが、実績が未入力のため、エラー表示になる。
  • 前年比の成長率を計算したいが、前年実績が0のため、エラー表示になる。

といったケースが考えられます。

2VLOOKUP関数と組み合わせる

IFERROR関数は、VLOOKUP関数と組み合わせることも多い関数です。

VLOOKUP関数の公式は

=VLOOKUP(検索キー, 範囲, 番号, [並び替え済み])

ですが、「検索キー」で指定したものが「範囲」になかった場合、「#N/A」というエラーが表示されてしまいます。

このエラー表示を回避したい場合は、次のように記述します。(空白セルにしたい場合)

=IFERROR(VLOOKUP(検索キー, 範囲, 番号, [並び替え済み]),"")
おすすめの記事