• ベストアンサー

ちょっと難しいですが。。。

sheet1のA列の整数「1111」とsheet2のA列の整数「1111」とが一緒なら sheet1のA列に対応するC~E列をsheet2のF~H列に貼り付けたいです。 例えていうなら sheet1のA5に「1234」と入力されていたら sheet2のA列で「1234」と入力されているセルを探し出し、 一致したらその行のF?~H?にsheet1のC5~E5を貼り付けたいです。 A列の整数は「1111」から「99999」まで何通りも有り、一つ一つだとかなりの時間がかかるので 出来ればマクロでボタン一つで出来るようにしたいです。 よろしくお願い致します。

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

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

マクロまで必要ではないでしょう。 Sheet1のA列が昇順に並んでいれば、VLOOKUP関数 でなければ、INDEXとMATCH関数の組み合わせでしょう。 Sheet2のF2に =INDEX(SHEET1!A:A,MATCH(A2,SHEET1!C:C,1),1) で下フィルしてみてください。 但し、重複の番号がないことが条件です。 他行は、関数の意味理解して応用してみてください。

noname#150498
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

その他の回答 (3)

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

整数とは、具体的に何なのか。例えば社員番号とか製品番号とか、勘定番号とか色々ある。 重複は (1)Sheet1のA列Sheet2のA列の中で両方に見られるのか、片一方か 1:多か多:1、多:多かそのとき対応をどう考えるのか。 データベース的な重要な考えなんだか、質問者は理解しているのかな。 マスタに当たるもの(Sheet1?)が多の場合は、Sheet2のC~E列はどのものを取ってくるのか。 ーー VBAでやりたいといっても、回答をそのまま理解もできないで使うようなら、課題丸投げで、下請けに回答者を使うになるで無いですか。 >A列の整数は「1111」から「99999」まで何通りも有り、一つ一つだとかなりの時間がかかるので とは何のことを言っているか判らない。 既回答の>Sheet1のA列が昇順に並んでいれば、VLOOKUP関数・・ は多分(FALSE型の利用を言っているなら)不必要だと思うし、VLOOKUP関数もMATCH関数も行的に初出のものしか見つけられない。 ーー このことを踏まえて質問者のレベルではVLOOKUP関数が使えるか、勉強するのが良いと思う。

noname#150498
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

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

No2です Sheet2のF2に =INDEX(SHEET1!C:C,MATCH(A2,SHEET1!A:A,1),1) でした。 重複ですが、 Sheet1のA列に、重複があるのですか? その場合、どちらを表示させたら良いのでしょうか。

noname#150498
質問者

お礼

重複行は削除するコトにしました。 こちらの方法で出来ました。 ご回答ありがとうございます。

  • pbforce
  • ベストアンサー率22% (379/1719)
回答No.1

Sheet1のA列の整数は全部違いますか?複合するものがありますか? 全部違う場合はVlookup関数で実現できそうですが。

noname#150498
質問者

補足

ご回答ありがとうございます。 重複するのも多数有ります。 よろしくお願い致します。

関連するQ&A

専門家に質問してみよう