office excel VLOOKUP関数の結果がエラー値の場合には空白で表示させる 《IFERROR・IF・ISERROR》
office excel VLOOKUP 関数(関数の分類: 検索/行列)では、検索値が見つからなかった場合に「#N/A」のエラーを返します。
VLOOKUP 関数がエラー出しちゃうのは、既定なので仕方がないことです。
"office excel2021703-921-1"
そのエラーを表示させず、空白などで表示させたい、というケースはよくよくあります。
今回は、VLOOKUP 関数でのエラー対処法を、2つの方法でご案内します。
おすすめは、簡単な方法1です。
<方法1. IFERROR 関数>
office excel IFERROR 関数(関数の分類: 論理)は、ユーザーのご要望に応じて Excel2007 より登場した関数です。
引数は [値] と [エラーの場合の値] の2つ、1つ目の引数[値] がエラーでなければ、そのまま [値] を返し、エラーであれば2つ目の引数[エラーの場合の値] の内容を返します。
したがって、IFERROR 関数に VLOOKUP 関数をネストした、次のような式の組み立てとなります。
=IFERROR(VLOOKUP(・・・),"")
"office excel2021703-921-2"
IFERROR 関数を使用すると、簡単にエラー回避ができます。
<方法2. IF 関数と ISERROR 関数>
IFERROR 関数がなかった Excel2003 まではこの方法でしたので、昔作成されたブックに見ることがあるかもしれません。
今や方法1で求めればよいのですが、いざ遭遇したときに把握できるようにしておきましょう。
VLOOKUP 関数の結果がエラーかどうかを判断するために、ISERROR 関数(関数の分類: 情報)を使用します。
エラーのときとエラーでなかったときとの答えの分岐が必要ですのでIF 関数(関数の分類: 論理)を用います。
とりあえず、式の組み立ては次のようになります。
=IF(ISERROR(VLOOKUP(・・・)),"",VLOOKUP(・・・))
IF 関数の条件には、ISERROR 関数の中に VLOOKUP 関数 がネストされた式が設定されています。
ISERROR 関数は、引数がエラーであるかどうかを判別できる関数で、エラーの場合は「TRUE」を返し、エラーでない場合は「FALSE」を返します。
これにより、VLOOKUP 関数の答えがエラーであるかどうかを調べています。
IF 関数 の引数[論理式] は、「ISERROR(VLOOKUP(・・・))」と設定しています。
これは、「ISERROR 関数が「TRUE」を返した場合」という意味となり、本来の「ISERROR(VLOOKUP(・・・))=TRUE」とする「=TRUE」を省略しています。
「=FALSE」と条件を設定したい場合は省略できません。
つまり、IF 関数の条件は「VLOOKUP 関数がエラーの場合」となり、引数[真の場合] は「空白」、引数[偽の場合] はエラーでない VLOOKUP 関数 の答えを返す、という式の意味となります。
"office excel2021703-921-3"
VLOOKUP 関数が2度出てきますが、同じ式を設定します。
ヘルプmemo
<IFERROR 関数>(関数の分類: 論理)
エラーの場合はエラーの場合の値を返します。エラーでない場合は、値自体を返します。
数式:
=IFERROR(値, エラーの場合の値)
引数:
・[値] ...エラーかどうかをチェックする任意の値、式、参照を指定
・[エラーの場合の値] ...エラーの場合に返す任意の値、式、参照を指定
ヒント:
・評価されるエラーの種類は、次のとおりです。
#N/A、#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME?、#NULL!
<ISERROR 関数>(関数の分類: 情報)
セルの内容がエラー値の場合に TRUE を返します。
数式:
=ISERROR(テストの対象)
引数:
・[テストの対象] ...テストするデータを指定
・[エラーの場合の値] ...エラーの場合に返す任意の値、式、参照を指定
ヒント:
・評価されるエラーの種類は、IFERROR関数と同じです。
※コメント投稿者のブログIDはブログ作成者のみに通知されます