• ベストアンサー

2列共に値が一致したら、別シートのその行の列の値

シート1の$G列の値と"all"シートの$I列の値が同じであり、かつシート1の$H列の値と"all"シートの$J列の値も同じである場合、 対応する行の"all"シートの$G列の値をシート1のセルに代入する為、 下記の関数式を使ってみたのですが、全ての行で『#VALUE』のエラーが出ました。 =INDEX(all!$G:$G, MATCH($G2&$H2, all!$I$2:$I$540&all!$J$2:$J$540, 0)) シート1は2行以降に値が入っています。allのシートの最終行は540行です。行は今後増える可能性があります。 allシートの$I列と$J列の値は同じ値が入っている行がありますが、最初にヒットした行のall"シートの$G列の値をシート1のセルに代入したいです。 こんな条件でも関数式で抽出は可能でしょうか? お分かりの方がいらっしゃいましたら、ご教示頂けましたら大変助かります。

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

  • ベストアンサー
  • SI299792
  • ベストアンサー率47% (772/1616)
回答No.1

多分、Excel2019 以前だと思います。 配列数式にするか、又はINDEX を付けるかです。 また、検索範囲が2行らなので+1して抽出位置を合わせる必要があります。 具体的には、 =INDEX(All!$G:$G,MATCH($G2&$H2,INDEX(All!$I$2:$I$999&All!$J$2:$J$999,),0)+1)

nnirosan
質問者

お礼

早速のご教示、誠にありがとうございました。関数式は一発で値を代入する事が出来ました。また、自分のタイプミスも、代入した値から見抜く事が出来ました。 関数式、理解出来ました。今後も便利に使わせて頂きます。感謝です。

Powered by GRATICA