「EXCEL VBA wdActiveEndPageNumber」
「エクセルvba .Information wdActiveEndPageNumber」
といった検索キーワードで時折アクセスがあります。
Excel VBAから、Word VBAの定数wdActiveEndPageNumberを使う方法を調べていらしたのでしょう。
wdActiveEndPageNumberを使ったExcelマクロ
Word文書を開いた状態で以下のExcelマクロを実行してください。
On Error GoTo ErrHandl
Const wdActiveEndPageNumber = 3
With GetObject(Class:="Word.Application")
MsgBox .Selection.Information(wdActiveEndPageNumber)
End With
Exit Sub
ErrHandl:
Select Case Err.Number
Case 429
MsgBox "Wordが起動していないようです。"
Case Else
MsgBox Err.Description & vbCrLf & Err.Number
End Select
Err.Clear
End Sub
Word文書上でカーソルの置かれているページのページ番号が、メッセージボックスに表示されます。
サンプルマクロで行っている処理
Wordへの参照設定が行われていないExcelで、VBEを起動して、オブジェクトブラーウザーで「wdActiveEndPageNumber」を検索しても、何もヒットしません。
ですから上記のマクロでは、
Const wdActiveEndPageNumber = 3
とコード内で定数wdActiveEndPageNumberを定義しています。
Wordの定数wdActiveEndPageNumberの実際の値は、WordからVBEを表示してオブジェクトブラウザーの詳細ペインを確認すればわかります。
Wordへの参照設定が行われている場合
下図のようにWordへの参照が行われているパソコンであれば、
「wdActiveEndPageNumber」を検索したときに、ちゃんとヒットします。
このような環境の場合、
Const wdActiveEndPageNumber = 3
は、不要です。
Home » エクセルマクロ・Excel VBAの使い方 » Office連携 » Excel VBAでWordの定数wdActiveEndPageNumberを使うには