• ベストアンサー

VLOOKUP関数について

シート1のA列の氏名を検索値とし、シート2の範囲を範囲とし、列番号5、検索の型FALSEとして シート1にシート2の検索値を表示させていますが、シート2にシート1の氏名がない場合は#N/Aのエラーが表示されます、これを 0 か ヌル で表示させる方法はありませんでしょうか。よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

通常は検索値が無い場合には空白としています。その場合に式は例えば次のようにします。 シート2ではA列に氏名が入力されているとしてシート1の例えばB列に列番号5の値を表示させるのでしたらB1セルに次の式を入力して下方にドラッグコピーします。 =IF(OR(A1="",COUNTIF(Sheet2!A:A,A1)=0),"",VLOOKUP(A1,Sheet2!A:E,5,FALSE)) 氏名が無い場合に0と表示させるのでしたら次の式を入力します。 =IF(A1="","",IF(COUNTIF(Sheet2!A:A,A1)=0,0,VLOOKUP(A1,Sheet2!A:E,5,FALSE)))

hoshi7777
質問者

お礼

早速回答くださいましてありがとうございます。大変助かりました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yama1718
  • ベストアンサー率41% (670/1618)
回答No.2

=IF(ISERROR(VLOOKUP(A1,Sheet2!$A:$E,5,FALSE),"",VLOOKUP(A1,Sheet2!$A:$E,5,FALSE)); ISERRORを使う方法があります。 ISERRORの中のVLOOKUPがエラーならTRUE,正常ならFALSEが返りますから、 それをIFでエラーならヌルに、正常なら改めてVLOOKUPを表示するようにします。 VLOOKUPの式がエラー判定と表示で二重になるので式を編集する時には注意が必要ですし、 式が長くなるので見栄えが悪いですけどね。 これは、他の関数や式でもエラーを見せなくさせる応用のきく方法です。

参考URL:
http://www.relief.jp/itnote/archives/000426.php
hoshi7777
質問者

お礼

早速回答いただきありがとうございました。 ベストアンサーには最初の方を選ばせていただきました、申し訳ありません。 今後ともよろしくお願いいたします。

すると、全ての回答が全文表示されます。

関連するQ&A