簡體   English   中英

如何獲取word 2003文檔的模板路徑

[英]How to get the template path of a word 2003 document

當我基於模板 (*.dot) 創建新文檔時,我需要知道文檔基於哪個模板。

有沒有辦法通過 VBA 找出用於創建這個新文檔的模板? 我需要模板的完整路徑。

ActiveDocument.AttachedTemplate.FullName

您還可以使用內置文檔屬性來訪問模板名稱: ActiveDocument.BuiltInDocumentProperties(wdPropertyTemplate)

我不記得為什么有時這兩個結果之間存在差異。 你必須試一試。 請注意,有時訪問內置屬性會將文檔設置為臟 state,因此在訪問該屬性之前保存 ActiveDocument.Saved state 並在訪問該屬性后重置它是有用的。

[更新]我再次查看了您創建文檔的方式。 如果您的客戶有 38.000 個模板,我猜您的問題是“假”模板。 我剛剛用 Office 2003 做了一個測試:

  1. 創建一個具有相同內容的新文檔“TestTemplate.doc”並將其保存為 doc 文件。 關閉它。
  2. Go 到 Windows Explorer 並將文檔重命名為“TestTemplate.dot”。 這會促使 Windows Explorer 將其視為模板,而不是文檔。 模板的默認 DDE 命令不是“OPEN”,而是“NEW”,如果您右鍵單擊文件也可以看到(“New”是粗體,而文檔“Open”是粗體)。
  3. 雙擊假模板: Word 創建文檔的副本,因此創建一個名為“Document2”或其他名稱的新文件。
  4. Go 到 VBA 編輯器,然后鍵入?ActiveDocument.AttachedTemplate,您會看到“正常”作為答案。 Type?activedocument.Type = wdTypeTemplate 你會看到“False”作為答案。

Sp 我猜“沒有模板”的文件只是其他文件的副本,而不是模板的副本。 所以你沒有辦法找到基礎模板。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM