更新日:、 作成日:
エクセル IFERROR 関数:値がエラーかどうかで処理を分ける
はじめに
エクセルの IFERROR 関数の使い方を紹介します。
IFERROR 関数は値がエラーでないならその値を返し、エラーのときはエラー用の値を返します。
=IFERROR(A1,"エラー") のようにして、セルの値がエラーでないときはその値を、エラーのときは エラー を返します。
=IF(IFERROR(条件,FALSE),"正常","エラー") のようにして、「IF 関数」と組み合わせて、条件がエラーになるときの処理ができます。
=IF(条件,IFERROR(値,"エラー")) のようにして、「IF 関数」が返す値がエラーになるときの処理ができます。
複数条件の結果がエラーになるときや、エラー処理がエラーになるときの値を返せます。
IFERROR 関数の引数
IFERROR(値, エラーの処理)
値がエラー以外のときは値を返します。エラーのときはエラーの処理を返します。
引数「値」 | 数値、文字列、セル参照、関数などを指定できます。 | スピル化 |
引数「エラーの処理」 | 引数「値」がエラーのときに返す値を指定します。数値、文字列、セル参照、関数などを指定できます。 | スピル化 |
スピル化:セルの範囲や配列を指定すると結果が「スピル」します。
エラー一覧
エラー名 | 内容 | 例 |
#DIV/0! | 0 で割り算している | =5/0 |
#N/A | 検索関数で検索対象が見つからない | =VLOOKUP("キーワード", …) "キーワード" が見つからない |
#NAME? | 関数名や定義した名前が間違っている | =SUN() |
#NULL! | セルの範囲指定が間違っている | =SUM(A1 B1) |
#NUM! | エクセルや関数の数値の範囲を超えている | =LARGE(B1:B3,5) 順位の範囲は 1 ~ 3 に対して 5 を指定している |
#REF! | 参照しているセルや行や列が削除された | =B2 セル「B2」や行「2」や列「B」を削除する |
#SPILL! | スピルの範囲に値が入力されている | ={1,2} をセル「A1」に入力したときにセル「B1」に値を入力している |
#VALUE! | 関数の引数に間違った型を指定している | =SUM("エクセル") |
スポンサーリンク
使い方
IFERROR 関数の使い方を紹介します。
エラーのときにエラーと表示する
セル「B3」がエラーなら エラー を表示します。それ以外ならそのセルの値を表示します。
=IF(ISERROR(B4),"エラー",B4)
「IF 関数」を使用しても同じことができますが、同じ数式を 2 回入力することになります。「ISERROR 関数」を使用してエラーか判定できます。
日付の実際の値は数値なのでその値を表示します。セルの書式設定から日付形式で表示できます。
数式がエラーのときに空文字を表示する
数式がエラーなら空文字 "" を表示します。それ以外ならそのセルの値を表示します。
=IFERROR(SUM(""),"")
=IFERROR(10,"")
=IFERROR("エクセル","")
高度な使い方
IFERROR 関数と他の関数を組み合わせた使い方などを紹介します。
IF 関数と組み合わせる
「IF 関数」の引数「条件」がエラーになるかもしれないときは「ISERROR 関数」を使用してエラーか判定できます。
=IF(ISERROR(値)=FALSE,正常な処理,エラーの処理)
「FIND 関数」は特定の文字が入っているか検索できます。特定の文字が入っていないときはエラーになります。E の文字が入っているか検索して分岐します。
=IF(ISERROR(FIND("E",B4))=FALSE,"正常","エラー")
「IF 関数」の引数「TRUE の処理」や引数「FALSE の処理」がエラーになるかもしれないときにエラー以外の値を返すには、その引数に IFERROR 関数を入力します。
「INT 関数」は数値を整数にします。文字列のときはエラーになります。
複数条件にする
IFERROR 関数は条件を入力する関数ではありません。複数条件を入力するには「IF 関数」をご覧ください。「AND 関数」や「OR 関数」を使用して複数条件を入力できます。
IFERROR 関数に条件を入力して、条件の結果がエラーになるときに FALSE にして分岐できます。
IFERROR 関数を複数入力する
引数「エラーの処理」でエラーになるかもしれないときは IFERROR 関数を入れ子にします。
=IF(ISERROR(B4),IF(ISERROR(C4),D4,C4),B4)
「IF 関数」からも同じことができますが、同じ数式を 2 回入力することになります。「ISERROR 関数」を使用してエラーか判定できます。
解説
IFERROR 関数は条件を入力する関数ではありません。値を返す関数です。関数の引数に IFERROR 関数を入力してエラーのときの値を返せます。
引数「値」がエラーでないなら、その値を返します。エラーのときは引数「エラーの処理」を返します。
「IF 関数」でも同じことができますが、判定用と結果用で同じ値を返すなら数式を 2 回入力することになります。
=IF(ISERROR(値),エラー処理,値)
スポンサーリンク