• ベストアンサー

VBA ブック間でのVLOOKUPのような処理?

「北海道」「東京」「大阪」「福岡」のような地域ごとのブックがあり、 それぞれのブック内にある「集計」シートのA列に日付がはいっており、 B~E列には数字が入力されています。 開かれたそれらのブックから、 B~E列を指定した日付ごとに「全地域合計」ブックに転記していきたいのですが、 どのようにすればいいでしょうか。 各地域のブックからfindでVLOOKUPのように日付を検索して その列から転記になるのかなと思ったのですが、 そもそもこのような考え方であっているでしょうか…? すみません。よろしくお願いします。

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

  • ベストアンサー
  • eden3616
  • ベストアンサー率65% (267/405)
回答No.1

全てのブックを開いてから「全地域合計」ブックのB2セルに 以下の数式を貼り付けてB2:E5までオートフィル。 =VLOOKUP($A$1,INDIRECT("[" & $A2 & ".xlsx]集計!$A$1:$E$31"),COLUMN()-COLUMN($A2)+1,FALSE) ブックを閉じても値を保持するのであれば、 B2:E5をコピーしてB2:E5に値として貼付てください。 それかVBAでA列のブックを開きながら Worksheetfunction.VlookupかWorksheetfunction.Match等で 検索して値を取得するとかになります。

mmm-aio
質問者

お礼

VBAでの値の取得を考えていました。 そのような方法があるのですね。ありがとうございました!