「word vba 表 タイトル行の繰り返し マクロ」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
Wordでは、[表ツール]-[レイアウト]タブ-[データ]グループ-[タイトル行の繰り返し]ボタンや、
[表のプロパティ]ダイアログ-[行]タブ-[各ページにタイトル行を表示する]チェックボックスから、
表が複数ページに渡る場合に、指定したタイトル行を各ページに、自動的に繰り返し表示させることができます。
「word vba 表 タイトル行の繰り返し マクロ」
という検索は、この設定をWord VBAで行うには、どのようなコードを書けばいいのかを探している方によるものでしょう。
表のタイトル行の繰り返しを設定するサンプルマクロ
以下のマクロで、アクティブな文書のすべての表の1行目を、タイトル行として繰り返し表示させることができます。
Dim tbl As Table
For Each tbl In ActiveDocument.Tables
tbl.Rows(1).HeadingFormat = True
Next
End Sub
サンプルマクロの解説
上記のマクロで利用しているオブジェクトモデルの階層関係は下図のとおりです。
表の中の行についての設定であるため、階層が少々深くなっています。
RowオブジェクトのHeadingFormatプロパティを、
Trueにすれば、[表のプロパティ]ダイアログの[各ページにタイトル行を表示する]チェックボックスがOnになりますから、アクティブな文書上の、すべての表に対してFor Each~Nextループを回して、
For Each tbl In ActiveDocument.Tables
各テーブルの、1行目を表すRowオブジェクトのHeadigFormatプロパティをTrueに設定しています。
tbl.Rows(1).HeadingFormat = True
タイトル行の繰り返しを解除したい場合は、
tbl.Rows(1).HeadingFormat = False
です。
また、
tbl.Rows(2).HeadingFormat = True
とすると、表の先頭2行がタイトル行として設定されます。
最終更新日時:2021-09-03 21:07
Home » ワードマクロ・Word VBAの使い方 » 表・テーブル » 表のタイトル行の繰り返しを設定するWordマクロ