- 締切済み
複数のExcelブックから特定シートの特定セル抽出
同一フォルダ内にある複数のExcelブックから特定シートの特定セル値を抽出して一覧表にまとめるExcel マクロ(VBA)を教えてください。 よく似ている質問、回答を読んだのですが、私のレベルではとても応用できず質問させていただきます。 全く同じものがあれば、そのアドレスを回答いただくだけでも助かります。 【前提】 ・実行する端末のOSはWindows XP(SP3)、Excelは2003 ・対象フォルダはネットワーク接続フォルダ「\\share\target」 この中に、複数のExcelブックがあります。 ・抽出したい対象は、各ブック内の「概要」シートの「C3」セルで統一されています。 【抽出一覧作成イメージ】 ・「集約.xls」ブックの「Sheet1」の2行目から抽出した結果を一覧表示する。 ・表示はA列に抽出元ブック名(=ファイル名)、B列に抽出元C3セルの値。 ・C3セル値を「集約.xls」ブックの「Sheet1」に貼り付ける際には「値で貼り付ける」が望ましい。 というようなイメージです。 とても勝手なお願いではありますが、宜しくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
作成例: sub macro1() dim myPath as string dim myFile as string mypath = "\\share\target\" myfile = dir(mypath & "*.xls") do until myfile = "" workbooks.open mypath & myfile with workbooks("集約.xls").worksheets("Sheet1").range("A65536").end(xlup) .offset(1, 0).value = myfile .offset(1, 1).value = workbooks(myfile).worksheets("概要").range("C3").value end with workbooks(myfile).close savechanges:=false myfile = dir() loop end sub 集約ブックを開いて置いて実行する 通常は集約ブックにマクロを登録しておくのが良い 新しいマクロの記録で、目的のブックを実際に開く操作を記録マクロに録って、ファイルの指定の正しい記述を一回確認してマクロに反映すること。
お礼
早速のご回答ありがとうございます。 本当に助かりますm(_ _)m