Word 中的 DOCVARIABLES 未初始化

DOCVARIABLES in Word not initializing

我需要将一堆 DOCVARIABLES 添加到我的工作文档中。最终目标是使用 C# 轻松询问用户需要将哪些值输入这些变量,然后使用空变量从模板自动生成 word 文档。

尽管已经完成并添加了变量的所有字段代码,但当我保存文档时,它实际上并没有将任何文档变量初始化为它们存在的状态,因此当我使用 C# 时,它找不到他们中的任何一个。当我检查 docx 为 zip 文件时,settings.xml 文件中没有 <w:docVars> 标签。当我使用 C# 而不是直接通过 word 添加 DOCVARIABLES 时,将添加这些标签。

到目前为止我找到的所有解决方案都涉及使用 VBA 宏将它们初始化为某些东西,但这不是一个选项,因为无论出于何种原因,我们都不允许这样做完全使用 VBA 宏,因为公司有些东西。公司要求他们拥有的计算机有一些限制,这完全阻止了我 运行 这些宏,并且试图绕过这不是一个选项。

如何让 DOCVARIABLES 初始化为某个允许 C# 找到它们的初始值?

DocVariables 不能为空。如果将 one 设置为空值,它将被删除。

解决方法是将初始值设置为“空”,然后让您的代码检查该值并采取适当的措施。否则,只需简单地检查 DocVariable 是否存在,如果不存在则采取适当的措施。

更新: DocVariables 必须从宏创建。宏可以在文档、文档模板或全局加载项中。所有这些都需要 运行 的许可,如果 IT 部门不批准任何这些解决方案,那么 DocVariables 就不是真正的自动化选项。