• ベストアンサー

excel vlookupで#n/aのとき別シート

excel vlookupでAシートから検索値を参照したときAシートに検索値がなく#n/aが出る状態のときBシートから検索値を探す場合のエクゼルの関数の設定の仕方を教えてください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

ご利用のエクセルのバージョンも書かれてないご相談ですが、エクセル2007以降を使い =IFERROR(VLOOUP(検索値,Sheet1!A:B,2,FALSE),IFERROR(VLOOKUP(検索値,Sheet2!A:B,2,FALSE),IFERROR(VLOOKUP(検索値,Sheet3!A:B,2,FALSE),"NOT FOUND"))) といった重ね方をしても出来ます。

zaikun
質問者

お礼

ありがとうございます。さっそくやってみました。okでした。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

>Aシートに検索値がなく#n/aが出る状態のときBシートから検索値を探す場合 Aに無ければBに必ずあると保証できるなら、 =VLOOKUP(検索値,IF(COUNTIF(SheetA!A:A,検索値),SheetA!A:B,SheetB!A:B),2,FALSE) とかでいいです。 ご利用のエクセルのバージョンも書かれてないご相談ですが、エクセル2007以降を使い =IFERROR(VLOOUP(検索値,Sheet1!A:B,2,FALSE),IFERROR(VLOOKUP(検索値,Sheet2!A:B,2,FALSE),"NOT FOUND")) といった重ね方をしても出来ます。

zaikun
質問者

お礼

ありがとうございました。さっそくチャレンジしたらバッチリうごきました。ただ検索値がAシートになくBシートにもなく、Cシートにある場合が出てきて困っています。

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

検索したい列がA列にあり、表範囲がA1:C10にあるとし、VLOOKUP関数で2列目の値を返すとして。 =IF(COUNTIF(Aシート!A1:A10,検索値)>0,VLOOKUP(検索値,Aシート!A1:C10,2,FALSE),VLOOKUP(検索値,Bシート!A1:C10,2,FALSE))

zaikun
質問者

お礼

ありがとうございます。さっそくためしてみます。

関連するQ&A