• ベストアンサー

Excelで複数の他のファイルから、データを抽出

フォルダに30個~40個のxlsファイルがあり、中身はmmddというシート名で日別に分かれています。 抽出を実行した日(たとえば今日なら0122)と、同じ名前のシートのA1~D4までの文字列データを、 抽出を実行したシートのA1~D4に貼り付け、2個目のxlsファイルから抽出したデータはA6~D9に、3個目はA11~D14に貼り付ける…という風な抽出をしてくれるようにしたいと考えております。 関数かVBAにて処理する方法はありますでしょうか? ご教授願います。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.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