2009-02-09 49 views
3

以編程方式生成Office Open XML文檔(Word 2007格式),並希望在生成的文檔首次在Word中打開時更新所有字段。動態創建Office Open XML文檔:更新打開的所有字段

當我前一陣子研究這個時,唯一的方法就是在文檔打開時運行VB腳本。但VB腳本默認情況下不運行,爲此,用戶必須授權腳本,這比要求用戶執行「全選,F9」更復雜,因此這就違背了目的。

有什麼建議嗎?

亞歷克斯

回答

2

您的研究已經顯示正確的結果。使用VBA或任何其他形式的Word自動化是唯一的出路。 Word或OpenXML可以選擇自動更新打開的字段。

+0

@divo很高興知道。謝謝你確認這一點。 – avernet 2009-02-18 18:53:17

7

有一種方法可以在不使用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> 

當然而,這樣所有字段更新,您可以更新您的文檔中的設置,這些都有一個確認對話框中出現的缺點當文檔打開時顯示「此文檔包含可能引用其他文件的字段。是否要更新本文檔中的字段?」