我确实需要您的支持,以在VBA中开发循环代码,该代码应执行以下操作:例如,每天都会生产X-date(例如X-X-20171101,X-20171102和很快)。我需要的信息在第一个文件中的第一个表中的同一单元格(B287)中找到。我想将Cell B287中的数据复制到一个Origin Excel文件(例如Origin.xls)。原始文件包含" A"列中的日期,以及" B"列中的相应数字(Cell B287中的数据)。
下面是我到目前为止都设法编写的,但它仅从一个文件中复制:
请参见到目前为止我的代码:
Sub eurobig()
Dim Originfile As Workbook
Dim Inputfile As Workbook
Set Inputfile = Workbooks.Open("C:UsersYW85SU..IX25_20171120.csv")
Set Originfile = Workbooks.Open("C:UsersYW85SU..Origin.xlsx")
Inputfile.Sheets("IX25_20171120").Range("B287").Copy
Originfile.Sheets("Sheet1").Range("B1").PasteSpecial
Inputfile.Close
如何使其通过更多文件循环?
我真的很感谢您对此的支持。非常感谢!
未经测试:
Sub eurobig()
Const FPATH As String = "C:UsersYW85SU.."
Dim Originfile As Workbook
Dim Inputfile As Workbook, f, c As Range
Set Originfile = Workbooks.Open(FPATH & "Origin.xlsx")
Set c = Originfile.Sheets("Sheet1").Range("A1")
f = Dir(FPATH & "*.csv")
Do While Len(f) > 0
Set Inputfile = Workbooks.Open(FPATH & f)
c.Value = f
c.Offset(0, 1).Value = Inputfile.Sheets(1).Range("B287").Value
Set c = c.Offset(1, 0) 'next row
Inputfile.Close False
f = Dir()
Loop
End Sub