Home » ワードマクロ・Word VBAの使い方 » ヘッダー・フッター » ヘッダーのParagraphをWord VBAで取得する

ヘッダーのParagraphをWord VBAで取得する

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2210 ビルド15726.20202 Microsoft Store)

「word header paragraph vba」
という検索でアクセスがありました。

この検索キーワードだけでは、ヘッダーのParagraphをどうしたかったのかわかりませんので、ヘッダーの段落を表すParagraphオブジェクトを取得する、Word VBAのコードをご紹介しておきます。

ヘッダーのParagraphを取得するサンプル

以下のWordマクロで、アクティブ文書の1つ目のセクションの、プリマリーヘッダーの、1つ目の段落を表すParagraphオブジェクトを取得できることを確認できます。

Sub ヘッダーのParagraphを取得する()
 Dim par As Paragraph
 Set par = _
   ActiveDocument.Sections(1) _
    .Headers(wdHeaderFooterPrimary).Range.Paragraphs(1)
 Stop
End Sub

Stopステートメントでマクロが中断したら、VBE(Visual Basic Editor)のメニュー[表示]-[ローカルウィンドウ]からローカルウィンドウを表示して、

上図のように、ヘッダーのParagraphオブジェクトを確認できます。

ヘッダーのParagraphを取得するオブジェクトモデル

上記のWordマクロでは、以下のような階層を辿ってParagraphオブジェクトを取得しています。

Document  ← ActiveDocument
 └ Section   ← .Sections(1)
   └ HeaderFooter ← .Headers(wdHeaderFooterPrimary)
     └ Range    ← .Range
       └ Paragraph  ← Paragraphs(1)

「word header paragraph vba」と検索なさった方が、どの程度Word VBAをご存知かわかりませんが、コード「.Headers(wdHeaderFooterPrimary)」で、ヘッダーを表すHeaderFooterオブジェクトを取得できる部分が、一番の難関でしょう。

HeaderFooterオブジェクトには、Paragraphを直接取得するプロパティが見当たりませんから、Rangeプロパティで取得できる

Rangeオブジェクトを経由してParagraphオブジェクトを取得しています。

最終更新日時:2022-11-30 15:51

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » ヘッダー・フッター » ヘッダーのParagraphをWord VBAで取得する

「ヘッダー・フッター」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.