• ベストアンサー

ExcelでLOOKUP関数がうまくいきません

EXCELでシート間でLOOKUP関数を使って「Sheet1」に関数を入れ、 コード(C5のセル)にコードを入れたら、「Sheet2」からデータを 持ってくるというようにしたいのですが、うまくいきません。 コードに「300」といれても「003」と入れても同じものをひっぱてきます。 【A列に入れた式です】    (コード)      (A列) =IF(C5="","",LOOKUP(C5,Sheet2!$B$5:$B$20,Sheet2!$C$5:$C$20)) 【Sheet1】 コード   A     B      C      D 001   △△市  △△区  △△丁目   520   ◇◇市  ◇◇区  ◇◇丁目  ◇◇ 300   □□市  □□区  □□丁目 003   □□市  □□区  □□丁目 【Sheet2】 コード   A     B      C      D 300   ○○市 001   △△市  △△区  △△丁目 003   □□市  □□区  □□丁目 520   ◇◇市  ◇◇区  ◇◇丁目  ◇◇ あまりうまく説明できませんが、よろしくお願いします。

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

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

#1です。1文字欠けてます。正しくは Sheet2のデータをコードの昇順にソート(並べ替え)しておかないと・・・。 です。

その他の回答 (3)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

LOOKUP関数のSheet2!$B$5:$B$20範囲は昇順に並べておかなければ正当に抽出できませんが如何でしょうか。 並べ替えできないのならば、=IF(C5="","",VLOOKUP(C5,Sheet2!$B$5:$C$20,2,FALSE))で如何でしょうか。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

確認はしていませんが、 =IF(C5="","",VLOOKUP(C5,Sheet2!$B$5:$B$20,COLUMN(C1),FALSE) か =IF(C5="","",VLOOKUP(C5,Sheet2!$B$5:$B$20,COLUMN(B1),FALSE) で 右フィル、下フィルでは

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

Sheet2のデータをコードの昇順にート(並べ替え)しておかないと・・・。

関連するQ&A