MS Word 2007 で、ブックマークを参照するフィールド コードを文の途中に挿入しようとしています。フィールド コードを太字にして斜体にしたいのですが、vb を使用してフィールド コードをフォーマットすることに成功していません。
これは私が持っているもので、動作するはずですが、動作しません。
Private WithEvents wordApp As Word.Application = New Word.Application
Private doc As Word.Document = wordApp.Documents.Add()
Dim bmRange As Word.Range = Nothing
Dim s As Word.Selection = wordApp.Selection
With s
.Style = "Normal"
.TypeText("THIS IS THE COURSE TITLE")
.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
.StartOf(Word.WdUnits.wdSentence, Word.WdMovementType.wdExtend)
bmRange = .Range
.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
.TypeParagraph()
.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
End With
doc.Bookmarks.Add("CourseTitle", bmRange)
これで、ブックマークがドキュメントの上部に設定されました。今、ドキュメントに数ページ入っているとしましょう。
s = wordApp.Selection
With s
.Style = "Normal"
.TypeText("This is the first part of the sentence ")
With .Range
.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
.Fields.Add(s.Range, Word.WdFieldType.wdFieldEmpty, "REF CourseTitle", True)
.Font.Bold = -1
.Font.Italic = -1
.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
.Font.Bold = 0
.Font.Italic = 0
End With
.TypeText(" this is the rest of the sentence.")
End With
これにより、フィールドコードが必要な場所に配置されますが、フォーマットされません。助言がありますか?