我正在以编程方式生成 Office Open XML 文档(Word 2007 格式),并希望在我生成的文档首次在 Word 中打开时更新所有字段。
当我前段时间对此进行研究时,唯一的方法是在文档打开时运行 VB 脚本。但是 VB Script 默认情况下不运行,为此用户必须授权脚本,这比要求用户执行“全选,F9”更复杂,因此达不到目的。
有什么建议吗?
亚历克斯
最佳答案
有一种方法可以在没有 VB 脚本的情况下做到这一点。
您可以将字段设置为脏,打开文档时它会更新。
<w:fldSimple w:instr="TOC" w:dirty="true" />
如果您有很多字段,您可以更新文档中的设置,以便在打开文档时更新所有字段
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<w:settings xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:updateFields w:val="true" />
</w:settings>
但是,它们都有一个缺点,即在打开文档时会出现一个确认对话框,上面写着“此文档包含可能引用其他文件的字段。您要更新此文档中的字段吗?”
关于vbscript - 动态创建 Office Open XML 文档 : update all fields on open,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/529607/