我正在使用类似下面的代码将一些文件添加到zip文件夹中:
Set oApp = CreateObject("Shell.Application")
oApp.Namespace(CVar(strDest)).CopyHere CVar(strSource)
这通常可以正常工作,但有时候我会遇到一个错误:
"(压缩文件夹错误) 无法创建输出文件"。这个错误是异步地在我的VBA代码之外引发的,因此我无法捕获它以采取补救措施。
如果我进入中断模式并回溯到:
oApp.Namespace(CVar(strDest)).CopyHere CVar(strSource)
然后文件就被正确添加了。
我猜测这个问题可能是由于压缩文件或源文件上存在某种锁定导致的,但我不确定如何检查。需要注意的是,正在添加的文件是从Microsoft Access 2007创建的pdf文件,并且我们使用完全限定路径,代码运行如下,每个zip文件最多创建10个pdf:
创建Zip
运行此循环:
对于每个要运行的报告 创建Pdf ' using DoCmd.OutputTo acOutputReport, "rptHame", acFormatPDF, strReportName 添加到Zip 结束循环
有没有办法修复此错误或捕获“无法创建输出文件”错误? 谢谢