サイトアイコン 独学エクセル塾

【ERROR.TYPE関数】エラーの種類・内容を出力!エラーの判別・分別と対処法

エクセルを使用していると悩みになるのがエラーですよね。


エラーには#NULLや#DIV/0!、#VALUEなど様々なエラーが存在します。

各エラーの内容と対処法についてはこちらから☟

エラーが発生!#N/A・DIV/0!・VALUE・REF・NAME・NUM・NULLの原因と対策 ► 独学エクセル塾 (dokugakuexcel.com)

そこで今回はどのようなエラーなのか判断できるERROR.TYPE関数についてまとめました。
こちらの関数を使用する事で対象のセルでどのようなエラーが発生しているかわかるようになります。
さらに今回はERROR.TYPE関数を活用したエラー時の対応をメッセージで
表示する方法についても紹介してますので是非参考にしてみてください。

それでは見ていきましょう。




⬛︎関数の仕組み

=ERROR.TYPE(対象セル)

対象セルはエラーの種類を把握したいセルを選択します。

⬛︎出力結果一覧

こちらではERROR.TYPE関数の出力結果とエラー内容を一覧にしています。

エラー内容出力結果
#NULL!1
#DIV/0!2
#VALUE!3
#REF!4
#VALUE!5
#NUM!6
#N/A7
#GETTING_DATA8
その他N/A

上記の表の使い方として、例を紹介します。
関数の出力が「1」の場合は「#NULL!」のエラーを表し、
関数の出力が「2」の場合は「#DIV/0!」のエラーを表します。

では使用方法を見てみましょう。

⬛︎関数の使用方法

では使用方法です。
引数も1つしかなく、とても簡単です。

下図の見本をご覧ください。

B3に計算式を入力し、D3にエラーの種類を出力しましょう。
では再度、関数の仕組みを見てみましょう。

=ERROR.TYPE(対象セル)

ここでの対象セルはエラーを確認したいB3になりますね。
つまり「=ERROR.TYPE(B3)」をD3に打ち込みます。
では入力した結果を見てみましょう。

出力結果は「#N/A」となってます。
エラーでない場合は#N/Aを出力するようになってます。

ではエラーを出してみましょう。

 
B3の式を「=5/0」にしてみたいと思います。
エクセルで割り算を使用する際に0または空白で割ると

DIV/0!のエラーとなってしまいます。

では入力した結果を見てみましょう。

結果はこのようになります。

D3には「2」が出力されました。
表を見てみると「#DIV/0!」は「2」となってますね。
つまり、#DIV/0!がエラーの内容である事がわかります。

 

別の例を見てみましょう。
B3とC3の数値をかけた値をE3に出力してみたいと思います。

今回は数値1を「A」にしています。

通常では数値に文字を掛けることはできませんから
「#VALUE!」のエラーになります。
では入力した結果を見てみましょう。
結果はこのようになります。

D3には「3」が出力されました。
表を見てみると「#VALUE!」は「3」となってますね。
つまり、エラーの内容が#VALUE!である事がわかります。

⬛︎ERROR.TYPE関数を応用する

では応用です。
今回は一例で下図のファイルを紹介します。

仕組みとしてB3の数値1とC3の数値2を入力すると
E3に数値1と数値2を割った結果を表示するファイルになってます。

ここで考えられるエラーとしては先程説明で使用した例を元にすると下記の通りです


・#DIV/0!:数値2が0または空白
・#VALUE!:数値1.2に文字が入力されてある。

では今回の仕様として#DIV/0!または#VALUE!のエラーが発生しなければ通常通り計算をおこない、

DIV/0!であれば「数値2が0または空白です」というメッセージを、

VALUE!であれば「数値1・2が文字になっています」というメッセージを表示させたいと思います。

使用するのは「IFERROR関数」と「ERROR.TYPE関数」と「IF関数」です。
IFERROR関数についてはこちらから☟

【IFERROR関数】エクセルでのエラー時の対応について~エラーに強いファイルを作る~ ► 独学エクセル塾 (dokugakuexcel.com)

IF関数についてはこちらから☟

【IF関数】エクセルで○○だったら△△を表示する~条件分岐を身に着ける~ ► 独学エクセル塾 (dokugakuexcel.com)
 

応用方法としてIFでエラーを検知した場合、メッセージを出力します。
IF関数の仕組みは「=IF(論理式,真の場合,偽の場合)」ですから、
当てはめると「=IFERROR(IF(ERROR.TYPE(B3/C3)=2,“数値2が0または空白です”,IF(ERROR.TYPE(B3/C3)=3,“数値1・2が文字になっています”,)),B3/C3)」
となります。

では実行してみましょう。
入力した結果はこちら。

計算できていますね。
数値2を0にすると、、、

DIV/0!のエラーを検知して「数値2が0または空白です」というメッセージが表示されてます。

さらに数値1に文字を入れてみましょう。

VALUE!のエラーを検知して「数値1・2が文字になっています」というメッセージが表示されてます。
エクセルに詳しくない方はエラーの内容や原因がわからないと思うので
これなら初心者に優しいシートを作成できますね。

■公式の説明

わかりやすいように説明したため公式と使用する語句が異なりますが

マイクロソフト公式の説明については下記のリンクを参照してください。☟

ERROR.TYPE 関数 (microsoft.com)

⬛︎まとめ

いかがだったでしょうか。
エラーの種類を出力できる関数があるのは
なかなか知られてませんよね。

今回の記事を参考にしてエラーの種類を出力し
システムづくり等にお役立てください

それでは次回の記事でお会いしましょう。

モバイルバージョンを終了