提问人:DinahMoeHumm 提问时间:11/9/2023 更新时间:11/9/2023 访问量:56
检查 Word.Document 是否为 mailmerge,如果是,请删除 mailmerge
Check that a Word.Document is a mailmerge and remove mailmerge if so
问:
我们在打开已配置为“邮件合并”的 Word 文档时遇到了一个奇怪的问题。
当您手动打开文档时,即只需在计算机上双击它,它就会显示一个消息框:
"打开此文档将运行以下 SQL 命令:
SELECT * FROM(此处为一些文件名)
数据库中的数据将放置在文档中。是否要继续?"
单击“否”后,您可以转到“邮件”功能区,“开始邮件合并”并选择“普通Word文档”。如果您随后保存文档,所有这些邮件合并内容都会消失,并且当您打开文档时,您将不再收到该消息。
现在是我们的应用程序。我们只需从 Word.Documents 对象打开 Document:
oWDoc = oWDocs.Open(FileName:=sFile)
现在。。。
我录制了一个宏,看看当我们执行这些操作时发生了什么,它记录的只是:
oWDoc.MailMerge.MainDocumentType = -1
但是当我单步执行我的代码时,在它按照第一个代码片段打开文档之后,当我在执行该语句之前检查 MainDocumentType 时,它已经是 -1 (wdNotAMergeDocument),如果我随后遵循
oWDoc.Save()
...这没什么区别。如果我随后尝试通过双击文档手动打开它,我仍然会收到该消息,我仍然需要通过动作将其删除。
我录制了另一个宏,以查看文档的打开方式是否有任何不同,但 Documents.Open 调用似乎传递了所有默认值,因此我认为它应该与我们以编程方式打开它的方式相同。
我的问题
我怎样才能:
- 以编程方式检查并
- 以编程方式删除它,以便即使用户随后手动打开文档,它也会真正消失?
我们的代码是用 VB 编写的,但欢迎用 C# 编写答案
答: 暂无答案
评论