こんなコードでとりあえずは紙が出た。
With bookMarkInfo .ZipCode = "123-4567" .Address = "東京都横浜市" .Name = "例の会社" End With Dim wordInstance As Word.Application Dim docInstance As Word.Document wordInstance = CreateObject("Word.Application") docInstance = wordInstance.Documents.Add("C:\SampleTemplate.doc") wordInstance.Visible = False With docInstance.Bookmarks .Item("YUBIN_NO").Range.Text = bookMarkInfo.ZipCode .Item("JUSYO").Range.Text = bookMarkInfo.Address .Item("NAME").Range.Text = bookMarkInfo.Name End With docInstance.PrintOut() docInstance.Close(False) docInstance = Nothing wordInstance.Quit() wordInstance = Nothing
あ、データを構造体に入れてるのは別の事情があってちょっと。
補足。この方法では、Word自体のオブジェクトが残ってしまい不都合が出る。具体的な回避策については後ほど(COMオブジェクトの解放処理を入れる必要がある)。