|
はじめまして。
急ぎで作らないといけないマクロがあるのですが、エラーがでて困っています。
やりたいこと
・フォルダ内の全.csvファイルのB15からB250までのデータを一つのシートにまとめたい。
・書いたコード
Sub OpenFilesInFolder()
Dim WB As Worksheet
Set WB = ThisWorkbook.Worksheets(1)
Dim path, fso, file, files
path = "C:\Users\XXXXXXXX…"
Set fso = CreateObject("Scripting.FileSystemObject")
Set files = fso.GetFolder(path).files
'フォルダ内の全ファイルについて処理
For Each file In files
'ファイルを開いてブックとして取得
Dim data As Workbook
Set data = Workbooks.Open(file)
'ブックに対する処理
Cells(1,i) = data.Worksheets("Sheet1").Cells(15,2).Value
i = i + 1
'保存せずに閉じる
Call data.Close(SaveChanges:=False)
Next file
End Sub
このコードを実行するとブックに対する処理のところで止まってしまいます。
※上のコードではひとまず1個のセルだけでも転記できないか試したのでCellsを使っています。本当はB15:B250をまるまる転記したいのです。
質問としては、
・B15からB250のような複数セルの領域の転記方法が調べてもよくわからない、調べて出てくるコードを入れてみても動かないので正しいコードを教えて頂きたい。
最初は.Range=.Rangeでできるのかと思っていたのですがどうもうまくいきません。
宜しくお願い致します。
|
|