ISERROR IFERROR関数
知っておくと便利な関数に エラー処理をしてくれる関数があります。
ここではポピュラーな、2種類のエラー処理関数 ISERROR と IFERROR関数 について解説します。
ISERROR関数
古いエクセルのバージョンで使われていました。もちろん今でも使えます。
書式
=ISERROR(テストの対象)
これはたいてい IF関数と組み合わせて使います。
たとえば、
=IF(ISERROR(対象),処理1,処理2)
などです。
これは、対象がエラーであるなら、処理1を、そうでないなら 処理2を実行する・・という意味です。
例として、次の図では、B2 に1、B3に0が入っていますから D3セルに入れた数式の、割り算 B2/B3 はエラー(#DIV/0!)になるはずです。
そこで、次の図にあるように、D3セルに
=IF(ISERROR(B2/B3),”エラー”,B2/B3)
( =IF(ISERROR(対象),処理1,処理2))
と入力します。
この数式内ではまず、 IFERROR関数を使って、 B2/B3 がエラーかどうかを判定します。
そして、IF関数で エラーの場合は処理1の ”エラー” を そうでないなら処理2として B2/B3 の計算結果を表示します。 この場合はエラーが表示されます。
注意:エラーの場合にも ”エラー” という文字列だけではなく、数式や数字をいれることができます。
普通の場合、エラーがでれば、以降の計算ができなくなったりしますが、数式や数字をいれることで回避できます。
IFERROR関数
IFERROR関数は EXCEL2007 以降に登場した関数です。
基本的には、ISERROR関数+IF関数 と同じようなイメージですが、書式が簡略化されており、使いやすくなっています。
書式
=IFERROR(値,エラーの場合の値)
この関数は ISERROR関数のように IF関数と組み合わせる必要がありません。
例えば、次の図の例では、B2 に1、B3に0が入っていますから 割り算の B2/B3 はエラー(#DIV/0!)になるはずです。
そこで、D2セルの関数を
=IFERROR(B2/B3,”エラー”)
とすれば、B2/B3 の計算結果がエラーの場合は ”エラー” を返し、そうでない場合は B2/B3 の計算結果を返してくれます。この場合はエラーなので ”エラー” を返しています。
IFERROR は IF+ISERROR に比較すると引数が少なく、また必要な()の数も少なくなっています。この関数を使うことで、複雑に組み合わされた関数をすっきりとわかりやすくしてくれます。
また、エラーの場合に ”エラー” という文字列ではなく、数式や数字をいれることができます。
普通の場合、エラーがでれば、以降の計算ができなくなったりしますが数式や数字を入れて回避できます。
おススメです。
コメント