0

我正在尝试使用 Adob​​e distiller 将 word 报告转换为 PDF。其中一些word文件中有宏,当文档打开时会显示一个弹出窗口,这会停止自动化过程。

我们尝试通过禁用宏

wordApplication.AutomationSecurity = Microsoft.Office.Core.MsoAutomationSecurity.msoAutomationSecurityForceDisable;

但现在应用程序不再触发Document Open事件,在该事件中实现了转换代码。在这种情况下,编写代码是为了确保仅在 word 加载文件后进行转换。

有没有其他方法可以禁用宏?或任何其他方法,以便我可以禁用宏并确保加载文件以启动转换过程。

4

2 回答 2

1

如果您禁用宏,则您打开的文档中的任何代码都不会运行,包括 Document Open 事件中的代码。毕竟这是一个“宏观”。无法在单个文档中运行某些宏,但不能运行其他宏。

为什么在文档打开事件中发生转换过程?为什么不在打开文档的代码中执行呢?

于 2009-07-31T13:59:52.643 回答
0

如果我正确理解了这个问题,你可以做一个try ...catch...finally陈述。

您只需将打开的代码放在 try 中,并将变量设置为trueif 文件已打开,然后if/then在 Statement 中放置一条语句,Finally以便如果文档已打开,它将运行转换,如果文档未打开您可以返回文档未转换的消息并说明原因。在 OP 的情况下,您可能仍然需要禁用宏。

我知道这是一个非常古老的帖子,但如果他们看到这篇文章寻求帮助,它可能会给其他人一些想法。

于 2013-07-17T20:56:54.453 回答