計算結果のエラーを特定し適切な対応をするには? ERROR.TYPEを使ったエラーチェック | Excelトピックス

スポンサーリンク
スポンサーリンク

計算結果のエラーを特定し適切な対応をする方法

Excelで計算を行う際、#DIV/0!(ゼロ除算)、#VALUE!(無効なデータ型)、#N/A(データなし)など、さまざまなエラーが発生することがあります。エラーが発生した場合、その原因を特定し、適切に処理することが重要です。

このようなエラーを効率的に処理するには、ERROR.TYPE関数を活用すると、発生したエラーの種類を特定し、適切な対応を行うことができます。本記事では、その方法を詳しく解説します。

ERROR.TYPE関数とは?

ERROR.TYPE関数は、指定したセルにエラーが発生している場合、そのエラーの種類に応じた番号を返します。エラーの種類を特定することで、状況に応じた適切な処理が可能になります。

構文

=ERROR.TYPE(エラー値)

ERROR.TYPE関数の戻り値一覧:

エラーの種類 エラーの説明 ERROR.TYPEの結果
#NULL! 無効なセル範囲の指定(演算子の誤りなど) 1
#DIV/0! ゼロで割り算をした 2
#VALUE! データ型が違う(数値の代わりに文字列など) 3
#REF! 参照が無効(削除したセルを参照) 4
#NAME? 関数名や範囲名が誤っている 5
#NUM! 数値が無効(大きすぎる数値など) 6
#N/A データが見つからない 7
その他 エラーなし #N/A

ERROR.TYPEを活用したエラーの判定

例えば、セルA1にエラーが発生している場合、次の数式を使うとエラーの種類を判定できます。

数式

=ERROR.TYPE(A1)

もしA1に#DIV/0!が発生している場合、この数式の結果は「2」になります。

ERROR.TYPEを使ったエラーメッセージの表示

エラーの種類に応じて、適切なメッセージを表示することも可能です。

数式

=IFERROR(
  CHOOSE(ERROR.TYPE(A1),
    "参照エラー",  "ゼロ除算エラー",  "データ型エラー",
    "参照範囲エラー",  "名前エラー",  "数値エラー",
    "データなし",  "不明なエラー"),
  "エラーなし"
)

解説:

  • ERROR.TYPE(A1) でエラーの種類を特定。
  • CHOOSE 関数で対応するエラーメッセージを表示。
  • IFERROR を使用して、エラーがない場合は「エラーなし」を表示。

IFERROR関数とERROR.TYPEを組み合わせたエラーハンドリング

計算結果のエラーを回避し、別の値を表示するには、IFERROR関数と組み合わせるのが効果的です。

数式

=IFERROR(A1/B1, "計算エラー")

この数式では、B1が0の場合、本来なら#DIV/0!エラーが発生しますが、「計算エラー」と表示されるようになります。

特定のエラーのみを処理する方法

① #N/A のみを処理(IFNA関数)

VLOOKUPなどの検索関数で#N/Aが発生する場合に、「データなし」と表示するには、IFNA関数が便利です。

数式

=IFNA(VLOOKUP(A1, B2:C10, 2, FALSE), "データなし")

② すべてのエラーを処理(ISERROR関数)

特定のエラーだけでなく、すべてのエラーを検出する場合はISERROR関数を使います。

数式

=IF(ISERROR(A1), "エラー発生", A1)

まとめ

Excelで計算結果のエラーを特定し、適切な対応をするには、次の方法が有効です。

  • ERROR.TYPE関数でエラーの種類を特定。
  • IFERROR関数でエラー時に代替値を表示。
  • IFNA関数を使って#N/Aエラーのみを処理。
  • ISERROR関数を使ってすべてのエラーを検出。

エラーの種類に応じた適切な処理を行うことで、より信頼性の高いExcelの計算シートを作成できます。

使用した関数について

ERROR.TYPE関数でエラーの種類を判別する方法をわかりやすく解説
ERROR.TYPE関数についてERROR.TYPEの概要エラーの種類を数値で判別する Excel関数=ERROR.TYPE(エラーセル)概要 指定されたセルに発生しているエラーの種類を判別し、そのエラーに対応する数値を返します。 エラーの種類に応じて、1~8の数値が返されます。 エラーが発生していない場合は、#N/A...
IFERROR関数でエラー時の値を指定する方法とVLOOKUPとの組み合わせ方についてわかりやすく解説
IFERROR関数についてIFERRORの概要エラー時の値を指定Excel関数=IFERROR( 値, エラー時の値 )概要 指定した値がエラーの場合に、代替の値を返します。エラーでない場合はその値を返します。 #DIV/0! や #VALUE! などのエラーを処理できます。 数式のエラーによる表示崩れを防ぐために役立...
ページが存在しないか、非公開の状態です。 | ProG-Cafe
ISERROR関数でIFと組み合わせる方法やIFERRORとの関係についてわかりやすく解説
ISERROR関数についてISERRORの概要エラー値を判定Excel関数=ISERROR( 値 )概要 指定した値がエラーであるかを判定し、TRUEまたはFALSEを返します。 エラーの種類を問わず、エラーが存在する場合にTRUEを返します。 #DIV/0!、#N/A、#VALUE! などの全エラーを対象とします。 ...
ページが存在しないか、非公開の状態です。 | ProG-Cafe