- ベストアンサー
Excelで複数の他のファイルから、データを抽出
フォルダに30個~40個のxlsファイルがあり、中身はmmddというシート名で日別に分かれています。 抽出を実行した日(たとえば今日なら0122)と、同じ名前のシートのA1~D4までの文字列データを、 抽出を実行したシートのA1~D4に貼り付け、2個目のxlsファイルから抽出したデータはA6~D9に、3個目はA11~D14に貼り付ける…という風な抽出をしてくれるようにしたいと考えております。 関数かVBAにて処理する方法はありますでしょうか? ご教授願います。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
フォルダに何て名前のファイルがあるのか,ファイルの調査からやらせたいなら: Sub macro1() Dim filename As String Dim n As Long n = 0 filename = Dir("c:\test\*.xls") Do Until filename = "" Range("A1:D4").Offset(n, 0).Formula = _ "='C:\test\[" & filename & "]" & Format(Date, "mmdd") & "'!A1" n = n + 5 filename = Dir() Loop End Sub 上述マクロを実行後などで,少なくとも何て言うファイルがあるのかシート上に作成済み(変更が無い)の場合 Sub macro2() Cells.Replace what:="]????'", replacement:=Format(Date, "]mmdd'"), lookat:=xlPart End Sub