参照サイト
https://vba.9ol.net/excel-excel-vba-error-462-howto-240225/
Excel VBAからWordドキュメントを新規作成して画像を挿入するプログラムを作成したときにはまったところを残します。
Wordアプリケーションオブジェクトへの参照を取得する
On Error Resume Next
Set WRD = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set WRD = CreateObject("Word.Application")
End If
On Error GoTo 0
CreateObject単独だとエラーになる場合がある
エラーになるかもしれない
Set WRD = CreateObject("Word.Application")
Wordがバックグラウンドで起動しているときにCreateObjectするとエラーになるみたいです
Excel VBAではWord定数を参照できない
DOC.Content.InsertAfter Text:="test"
'WRD.Selection.EndKey Unit:=wdLine, Extend:=wdMove
'WRD.Selection.InsertBreak Type:=wdLineBreak
WRD.Selection.EndKey Unit:=5, Extend:=0
WRD.Selection.InsertBreak Type:=6
wdLine=5
wdLineBreak=6
エラーになる
WRD.Selection.EndKey Unit:=wdLine, Extend:=wdMove
最初このエラーが表示されたとき、メソッドの指定が間違っているのかと思いはまってしまったのですが、
Excel VBAではWord VBAの定数が定義されていないことが原因でした。
インターネットで検索すると定数の値が調べられますので
下記のどちらかで対応する必要があります。
・グローバル定数として定義する
・定数を数値に置き換える
例えば下記のようなサイトで定数の値を調べられます。
https://learn.microsoft.com/ja-jp/office/vba/api/word.wdunits