VBA 2007 を使用して、Excel から Word 文書を作成し、見出しがドキュメント マップに表示されるように、さまざまな見出し (見出し 1、見出し 2、通常) のテキストを書き込むにはどうすればよいですか?
質問する
13413 次
1 に答える
4
この例は Excel から実行します。アーリー バインディングを使用するため、VBA 参照 ([ツール] -> [参照]) に Word への参照が設定されていることを確認する必要があります。
Word は、ドキュメントにテキストを挿入するのが最も難しい場合があります。 通常、現在選択されているポイントに移動する必要があります。ブックマークやフィールド コードを使用して、ドキュメント内のさまざまな場所にテキストを配置できます。
Sub MakeWordDocumentWithHeadings()
Dim wdApp As Word.Application, wdDoc As Word.Document
'Use on error resume next so VBA doesn't produce an error if it can't find Word Open
On Error Resume Next
Set wdApp = GetObject(, "Word.Application")
'If it is nothing the open a new instance of word
If wdApp Is Nothing Then Set wdApp = New Word.Application
'Reset the errors
On Error GoTo 0
'Add a new document
Set wdDoc = wdApp.Documents.Add
'Word works by the location of the 'selection'
wdApp.Selection.Style = ActiveDocument.Styles("Heading 1")
wdApp.Selection.TypeText Text:="Heading One"
wdApp.Selection.TypeParagraph
wdApp.Selection.Style = ActiveDocument.Styles("Heading 2")
wdApp.Selection.TypeText Text:="Heading Two"
wdApp.Selection.TypeParagraph
wdApp.Selection.Style = ActiveDocument.Styles("Heading 3")
wdApp.Selection.TypeText Text:="Heading Three"
wdApp.Selection.TypeParagraph
'Save close or whatever here
'Always set objects to nothing.
Set wdDoc = Nothing
Set wdApp = Nothing
End Sub
于 2012-10-11T10:02:44.680 に答える