ここでは、Word文書を制御するためのExcelのコードを示します。 私はここで様々なスタイルにテキストの一部を作成したいが、実行時エラー430を取得しておく(クラスはオートメーションをサポートしていないか、予測したインターフェースをサポートしていません)VBAの見出しスタイルをExcelからWordに適用する
でしょうがコードです:
'Create the word document
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Add
objWord.Visible = True
Set objSelection = objWord.Selection
For i = 2 To 94
'Heading 1
If myRange(i - 1, 1) <> myRange(i, 1) Then
objSelection.TypeParagraph
objSelection.Style = ActiveDocument.Styles("Heading 2")
objSelection.TypeText Text:=myRange(i, 1)
End If
objSelection.TypeParagraph
objSelection.Style = ActiveDocument.Styles("Heading 3")
objSelection.TypeText Text:=myRange(i, 2)
For k = 3 To 12
objSelection.TypeParagraph
objSelection.Style = ActiveDocument.Styles("Heading 4")
objSelection.TypeText Text:=myRange(1, k)
objSelection.TypeParagraph
objSelection.Style = ActiveDocument.Styles("Normal")
objSelection.TypeText Text:=myRange(i, k)
Next
Next
でエラーが発生した行は何ですか? –
初期の考え:あなたの 'myRange'変数は、それがExcel.Rangeオブジェクトですか?その場合、オブジェクトに対して正しい値を提供していません。 'Range'を' Cell'として使用しているようです。また、Excel VBAで参照できるWordライブラリもあります。最後に、Dirkが言ったように、エラーが発生する場所を指定してください – Zac
私はWordのライブラリを使用しました。唯一の問題は 'objSelection.Style = ActiveDocument.Styles(" ___ ")'です。それは動作していません。残りはうまくいっています。 – user3016795