use*_*210 13 excel vba excel-vba
我有一个文件夹,我每天都会收到1000多个excel文件,它们都是相同的格式和结构.我想做的是每天在所有100多个文件上运行宏?
有没有办法实现自动化?所以我可以每天在1000多个文件上继续运行相同的宏.
pet*_*erm 16
假设您将文件放在相对于主工作簿的"Files"目录中,您的代码可能如下所示:
Sub ProcessFiles()
Dim Filename, Pathname As String
Dim wb As Workbook
Pathname = ActiveWorkbook.Path & "\Files\"
Filename = Dir(Pathname & "*.xls")
Do While Filename <> ""
Set wb = Workbooks.Open(Pathname & Filename)
DoWork wb
wb.Close SaveChanges:=True
Filename = Dir()
Loop
End Sub
Sub DoWork(wb As Workbook)
With wb
'Do your work here
.Worksheets(1).Range("A1").Value = "Hello World!"
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
在此示例中DoWork()
是您应用于所有文件的宏.确保您在宏中执行的所有处理始终位于wb
(当前打开的工作簿)的上下文中.
免责声明:为简洁起见,跳过了所有可能的错误处理.
归档时间: |
|
查看次数: |
82265 次 |
最近记录: |