我正在开展一个项目,其中包括自动填写一些模板。我计划使用单词书签来创建模板,然后通过VB填充它们。这没问题,但问题是我想允许使用其他模板。有没有办法可以打开word文档并从中获取所有书签?我需要一个列表,所以我可以确定哪些能够填写,然后发送正确的值。如果您需要复习,这是我正在使用的代码。
Imports Microsoft.Office.Interop
Dim oWord As Word.Application
Dim oDoc As Word.Document
oWord = CreateObject("Word.Application")
oWord.Visible = True
oDoc = oWord.Documents.Add("Z:\DJ\Documents\Reminder_Letter.doc")
oDoc.Bookmarks("full_name").Range.Text = "John Smith"
基本上,我只想确保在尝试向其中添加值之前文档中存在“full_name”,因此我需要文档中的书签列表。
谢谢, 凯文
答案 0 :(得分:3)
只需遍历书签集合,检查名称。
像
这样的东西 For each bm in oDoc.bookmarks
if bm.Name = "blah" then
'this is my bookmark
end if
next
答案 1 :(得分:3)
使用书签集合的Exists功能会更快:
oDoc.Bookmarks.Exists("bookmark name")