繁体   English   中英

访问中的 Vba 代码循环访问文件夹中的所有 excel 文件,打开、保存和关闭它们

[英]Vba code in access that loops through all excel files in a folder, opens, saves and closes them

我正在开发一个可以在 Access 中部署的 vba 脚本,它可以打开、保存和关闭某个文件夹中的所有 excel 文件。

到目前为止,我有这个代码,它有点工作,但有一些问题。 一个是它实际上明显地打开了 excel,并且在循环完成后,一个空的、看起来很奇怪的 excel 仍然打开。 有了这个,我还注意到,在进程下的任务管理器中,即使没有打开 excel 实例,这也会导致运行 excel 进程。

其次,由于格式是 xls,我正在处理 excel 兼容模式,不确定我是否找到了最佳解决方案,因为我有时会在之后收到错误消息,因为文件扩展名和格式不一样。

此外,我只是在按原样寻找对代码的一些一般改进。

这是我的代码:

Sub demo()
Dim directory As String, fileName As String
Dim Mywb As Workbook
Dim app As New Excel.Application
app.Visible = True
directory = "C:\Users\test\FolderA\"
fileName = Dir(directory & "*.xls")

Do While fileName <> ""
Workbooks.Open (directory & fileName)
fileName = Dir()
ActiveWorkbook.CheckCompatibility = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Loop
End Sub

我将解决看起来“奇怪”的 Excel。

最后需要app.Quit以确保关闭打开的 Excel 应用程序。

如果不这样做,由于您的资源与未关闭的应用程序实例捆绑在一起,您最终将导致性能下降并最终崩溃。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM