Home » ワードマクロ・Word VBAの使い方 » ヘッダー・フッター » Word VBAで奇数ページと偶数ページで別のヘッダーを指定する

Word VBAで奇数ページと偶数ページで別のヘッダーを指定する

対象:Word2007, Word2010, Word2013, Windows版Word2016

「word vba ヘッダー 奇数偶数ページ設定」
といった検索キーワードで、このサイト『インストラクターのネタ帳』へのアクセスがあることに気づきました。

Wordでは[ページ設定]ダイアログ-[その他]タブ-[ヘッダーとフッター]欄-[奇数/偶数ページ別指定]チェックボックスをOnにすることなどで、

奇数ページと偶数ページで別のヘッダーを指定するWordマクロ

奇数ページと偶数ページのヘッダー・フッターを別に指定することができるようになります。

この操作をVBAで行う方法を探していたのが、
「word vba ヘッダー 奇数偶数ページ設定」
という検索です。

[スポンサードリンク]

奇数ページと偶数ページで別のヘッダーを設定するサンプルマクロ

以下のようなWordマクロで、アクティブな文書の一つ目のセクションの、奇数ページと偶数ページに、別のヘッダーを設定できます。

Sub 奇数ページと偶数ページで別のヘッダーを指定する()

 With ActiveDocument.Sections(1)
  .PageSetup.OddAndEvenPagesHeaderFooter = True
  .Headers(wdHeaderFooterPrimary).Range.Text = "奇数ページ"
  .Headers(wdHeaderFooterEvenPages).Range.Text = "偶数ページ"
 End With

End Sub

サンプルマクロで利用しているオブジェクトモデル

PageSetupオブジェクトのOddAndEvenPagesHeaderFooterという、何だか長いけれど、ちゃんと読むと英語をそのまま名前しただけのプロパティをTrueに設定すると、

奇数ページと偶数ページで別のヘッダーを指定するWordマクロ

奇数ページと偶数ページでヘッダーを別に設定することができるようになります。

ヘッダーを表すHeadersFootersコレクションオブジェクトの既定メソッドであるItemメソッドの引数に、

奇数ページと偶数ページで別のヘッダーを指定するWordマクロ

WdHeaderFooterIndex列挙に定義された定数・wdHeaderFooterPrimaryを指定すると、

奇数ページと偶数ページで別のヘッダーを指定するWordマクロ

プライマリーヘッダーを表すHeaderFooterオブジェクトを取得できます。PageSetupオブジェクトのOddAndEvenPagesHeaderFooterプロパティがOnになっていると、このプライマリーヘッダーが奇数ページのヘッダーとなります。

そんなプライマリーヘッダーに「奇数ページ」という文字列をセットしているのが、
  .Headers(wdHeaderFooterPrimary).Range.Text = "奇数ページ"
という行です。

ヘッダーを表すHeadersFootersコレクションオブジェクトの既定メソッドであるItemメソッドの引数に、定数・wdHeaderFooterEvenPagesを指定すると、

奇数ページと偶数ページで別のヘッダーを指定するWordマクロ

その名前のとおり偶数ページのヘッダーを表すHeaderFooterオブジェクトを取得できます。

この偶数ページのヘッダーに「偶数ページ」という文字列をセットしているのが、
  .Headers(wdHeaderFooterEvenPages).Range.Text = "偶数ページ"
の部分です。

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » ヘッダー・フッター » Word VBAで奇数ページと偶数ページで別のヘッダーを指定する

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

検索


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

.