「フッダーのフォントサイズ word マクロ」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
で、そのフッターのフォントサイズをどうにかするWordマクロ・VBA(Visual Basic for Applications)のコードを探していたのでしょう。
ここでは参考になりそうなマクロを2つご紹介しておきます。
フッターのフォントサイズを変更するサンプルマクロ
まずは、アクティブな文書の、フッターのフォントサイズをすべて変更するマクロです。
Dim sec As Section
Dim ftr As HeaderFooter
For Each sec In ActiveDocument.Sections
For Each ftr In sec.Footers
ftr.Range.Font.Size = 9
Next ftr
Next sec
ヘッダー&フッターというのは、セクションごとに指定することができます。
更に、奇数ページと偶数ページで異なるヘッダー&フッターを設定したり、先頭ページだけ異なったヘッダー&フッターにしたりといったことができます。
そのため上記のマクロでは、アクティブな文書の全セクションを表すSectionsコレクションオブジェクトを対象として、For Each~Nextループを開始して、
For Each sec In ActiveDocument.Sections
更に、各セクションの全フッターを表すFootersコレクションオブジェクトを対象として、For Each~Nextループを回し、
For Each ftr In sec.Footers
各フッターのフォントサイズを変更しています。
ftr.Range.Font.Size = 9
ヘッダー&フッターのフォントサイズを変更するサンプルマクロ
続いて、アクティブな文書の、ヘッダーとフッターのフォントサイズをすべて変更するマクロです。
Dim sec As Section
Dim hd_ft As HeaderFooter
For Each sec In ActiveDocument.Sections
For Each hd_ft In sec.Headers
hd_ft.Range.Font.Size = 9
Next hd_ft
For Each hd_ft In sec.Footers
hd_ft.Range.Font.Size = 9
Next hd_ft
Next sec
End Sub先ほどのフッターのフォントサイズを変更するマクロに、すべてのヘッダーを表すHeadersコレクションオブジェクトを対象としたFor Each~Nextループが追加されています。
For Each hd_ft In sec.Headers
Wordのヘッダー&ッターのオブジェクトモデルに慣れていないと、ちょっとビックリするかもしれませんが、すべてのヘッダー&フッターに対して処理を行うには、このマクロで行っているように、
For Each sec In ActiveDocument.Sections
For Each hd_ft In sec.Headers
Next hd_ft
For Each hd_ft In sec.Footers
Next hd_ft
Next sec
セクション向けのループの中で、ヘッダー向けのループ、フッター向けのループをそれぞれ回すのが、定番の処理方法です。
Home » ワードマクロ・Word VBAの使い方 » ヘッダー&フッター » ヘッダーフ&ッターのフォントサイズをWord VBAで変更する