我已经搜索并搜索了这个并且已经接近但并不完美。来了……
我需要的是一个代码来连续处理其他excel工作簿并复制数据。这些文件将被命名为 1、2、3、4 等,最多可达 60 个。我有一些代码可以打开我的所有文件,效果很好。接下来,我需要它进入所有工作簿并复制设置数据并将其返回到我也能够完成的主工作簿。这是我的问题...
我知道必须有一种方法可以一次性编写代码并让它在剩余的文件中运行。IE。如果第一个文件名为 1.csv,代码可以说在 1.csv 上执行,然后在 1.csv + 1 上表示 2.csv,然后循环输出?似乎它应该能够做到。我不想通过编写相同的代码从 1.csv 一直复制到 60.csv 来手动工作
如果有办法循环它,那么我如何结束 end if 部分。IE 一周可能有 37 个文件,接下来有 40 个,依此类推。我希望它从文件 1.csv 开始并一直工作,直到它到达最后一个活动文件 37.csv 或 60.csv,然后如果没有 38.csv 文件则结束。
这是我拥有的基本记录代码。
Public Sub testr()
Dim filenum As Integer
Dim lastrow As Long
filenum = 1
On Error GoTo my_handler
Do
Windows(filenum & ".CSV").Activate
Range("A25").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy
Windows("test.xlsm").Activate
Range("A1").Select
lastrow = Worksheets("Data").Cells(1, 1).End(xlDown).Row
ActiveSheet.Paste
filenum = filenum + 1
Loop
my_handler:
MsgBox "All done."
Exit Sub
End Sub
任何人都可以给我的任何帮助将是惊人的!先谢谢了~