【发布时间】:2021-06-28 02:13:26
【问题描述】:
我有一个过程,它接受一系列输入,检索一些数据,并在循环中生成 PDF。
如果我在一个条目上测试它,它总是有效的。当我在循环中运行它时,它经常在某个时候挂起。
我已经隔离了执行同一行时总是发生的问题:
Range("Print_Area").ExportAsFixedFormat Type:=xlTypePDF, Filename:=PDF_filename, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
我已确认问题不是我要保存的文件名。 当我重复该过程时,可以成功生成相同的文件。
我了解到此问题可能与打印机的可用性有关。
在尝试生成 PDF 之前,我曾尝试打印出 Application.ActivePrinter,但在成功尝试和挂起 Excel 之前我得到了相同的结果。
我在 Microsoft Excel for Microsoft 365 MSO - 64 bit 在 Windows 10 中运行时遇到了这个问题。
如果有任何解决此问题的建议,我将不胜感激。
【问题讨论】:
-
假设下一个循环在第一个循环完成之前开始,您可能会尝试在该点插入一个循环,该循环一直运行直到前一个 PDF 被安全创建。
-
感谢 Variatus 的建议,但是生成 PDF 的调用是同步的,因此在前一个 PDF 完成之前无法启动另一个 PDF。
标签: excel vba pdf-generation