• ベストアンサー

[EXCEL]VLOOKUP関数がうまくいかないので助けてください

あ.xls   B  C  1 10   2 12 3 15 い.xls   B  D 1 10 100 2 15 150 3 18 180 あ.xlsファイルのC列に、 あ.xlsファイルのB1セルと、い.xlsファイルのB1を見比べて同じ値なら、 い.xlsファイルのD1の値をあ.xlsファイルC1に値を表示する数式を 入力しようと思います。 「=VLOOKUP(B1,[い.xls]Sheet1!$1:$3,4,false)」と あ.xlsファイルのC1セルに数式を入力しましたが、すべてエラー(#N/A)で 返ってしまいます。 正常に機能するよう、数式を教えてください。

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

  • ベストアンサー
  • oresama
  • ベストアンサー率25% (45/179)
回答No.2

=VLOOKUP(B1,[い.xls]Sheet1!$B1:$B3,3,0) です。宜しければVLOOKUPのHELPをご参照ください。 蛇足 =IF(ISERORR(VLOOKUP(B1,[い.xls]Sheet1!$B1:$B3,3,0) ),"該当なし",VLOOKUP(B1,[い.xls]Sheet1!$B1:$B3,3,0)) で、いファイルに無い場合は「該当なし」と表示されます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

テーブルを同一ブックのSheet2においてテストしました。基本部分は =VLOOKUP(B4,Sheet2!$B$1:$D$3,3,FALSE) ですが「12」のように、該当がない場合は#N/Aがでますので #3の方の解答のように=IF(ISERORR(・・・),"該当なし",(・・・)) で整えます。#1のご指摘の通り、索引される表のキー列は左端にあるものとし、そこB列を第1列と勘定するので、C列が2、D列は3が正しく、A列が1で、D列は4と勘違いしやすいです。 出来るだけキー列とその索引して持ってくる値の列は隣接させ、 キー列もA列にもってくるように私はしています。

  • daiju3000
  • ベストアンサー率29% (21/72)
回答No.3

私だったら、VLOOKUPではなくてIFでやります =IF(B1=[い.xls]Sheet1!B1,[い.xls]Sheet1!D1,"") こういうふうに・・・

  • Coo_mama
  • ベストアンサー率36% (8/22)
回答No.1

「=VLOOKUP(B1,[い.xls]Sheet1!$1:$3,4,false)」 とありますが。 セル範囲の指定はい.xlsの$B$1:$D$3ということですよね? 「=VLOOKUP(B1,い!$B$1:$D$3,3,FALSE)」 そうすると次の「4」ではなく「3」ではないでしょうか?

関連するQ&A