質問: isnaとiserrorの使い方の違い こんばんは。 超初心者です。教えてください。 vlookup関数で、検索結果がみつかったらその値を表示する式で =if(iserror(vlookup(a1,表,列,処理方法)),"",vlookup(a1,表,列,処理方法)) という書き方と =if(isna(vlookup(a1,表,列,処理方法)),"",vlookup(a1,表,列,処理方法)) という書き方をみつけました。 1.どちらがよいのでしょうか? 2.どちらも同じ答えがでるのでしょうか? 3.またiserrorとisnaでは何が違うのでしょうか? よろしくお願いいたします。
回答: こんばんは。 >=if(iserror(vlookup(a1,表,列,処理方法)),"",vlookup(a1,表,列,処理方法)) こちらがオーソドックスだと思います。 理由は、vlookupの吐き出すエラーの種類は、vlookupは、#value!, #ref!, #n/a!, #name! があります。(他にも出るかもしれません) #n/a! というのは、 vlookup(検索値,範囲,列番号,検索の型) この中の「検索値」が見つからなかったことに対して、エラーを出さないようにするためのものです。iserrorでも基本的には同じことです。ワークシートの数式入力というは、心理的に短いほうを選ぶという習慣がありますが、こういうときは、iserrorという何でもエラー対応のほうが安心できます。しかし、isna でも間違いではありません。