ラベルラベル

条件分岐・論理入門

IFERROR関数を見て理解する

値がエラーなら指定した代替値を返し、エラーでなければ元の値をそのまま返す関数です。

3つのポイント

  1. 確認したい値を指定する
  2. 値がエラーか確認する
  3. エラーなら代替値を返す
例題

#DIV/0!ならメッセージを表示する

サンプル数式

  • 判定する値
  • エラー時の値

いまの結果:

計算できません
計算結果
結果セル:C2
入力・条件:判定する値 #DIV/0! / エラー時の値 「計算できません」
  • 判定する値A2:#DIV/0!
  • エラー時の値B2:「計算できません」
この結果になる理由

エラーを捕捉し、指定された代替値を使用しました。

サンプルデータ

判定する値を変えてみよう

※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。

「#DIV/0!ならメッセージを表示する」のサンプルデータ。引数番号は正式引数と教材要素の対応、小さな角丸数字は処理順を表します。
ABC
1判定する値エラー時の値結果
2計算できません
判定する値エラー時の値結果セル
①・② 正式引数 / 教材要素1–3 処理の流れ

A2、B2に値を入力すると、結果と処理順が変わります。

2つの引数

色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。

  1. A2表のセル: A2

    エラーかどうかを確認する値です。この例ではA2の#DIV/0!を確認します。

  2. B2表のセル: B2

    第1引数がエラーだったときに返す値です。この例ではB2の「計算できません」を返します。

この数式を日本語にすると

A2は#DIV/0!エラーなので、IFERRORはB2の「計算できません」をC2に表示します。A2がエラーでなければ、その値をそのままC2に表示します。

この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。

処理の流れ

手順1〜3を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。

  1. 判定する値

    A2

    判定する値: #DIV/0!エラー

  2. エラー時の値

    B2

    エラー時の値: 計算できません

  3. エラーなら代替値を返す

    C2

    結果は「計算できません」です。C2に表示します。

対応アプリ

  • Excel
  • Google スプレッドシート

関数自体が対応するアプリです。教材例の数式や再計算が、両アプリで同じように動くことを保証するものではありません。

この例の注意点

  • IFERRORは#N/A、#REF!、#VALUE!、#DIV/0!、#NUM!、#NAME?、#NULL!などのエラー値を対象にします。
  • 第1引数がエラーでなければ、第2引数は使わず、第1引数の値をそのまま返します。
  • この教材では未引用の#N/Aなどをエラー値として扱い、"#N/A"のように二重引用符で囲んだ同じ綴りは通常の文字列として区別します。
  • 参照したセルが空白の場合は、ExcelのIFERRORと同様に空文字として扱います。

一般構文

対応:Excel / Google スプレッドシート ・ 構文:構文差あり

  • Sheetsでは第2引数を省略できます。
  • Sheetsではエラー時の戻り値を省略すると空白を返します。
  • 真の空白セル参照が結果として選択された場合、Excelは0を返し、Google スプレッドシートは空欄を返します。

Excel

=IFERROR(value, value_if_error)

Google スプレッドシート

=IFERROR(value, [value_if_error])

[] は省略できる引数です。

省略時

value_if_error
省略すると、valueがエラーの場合は空白を返します。
公式資料・確認範囲

公式資料

実機確認

  • Excel 2021 / Google スプレッドシート計算結果・入力の扱い・エラーを確認済み

未確認

配列展開

次に学ぶ関数

IFNA

すべてのエラーを置き換える次は、#N/Aだけを置き換えます。

次に学ぶ