改ページを設定する方法
改ページを設定するには以下のプロパティかメソッドを使用します。
- Range【レンジ】オブジェクトのPageBreak【ページブレーク】 プロパティ
指定したセルの上に水平、左に垂直の改ページを設定します。 - HPageBreaks【エイチページブレークス】コレクションのAddメソッド
指定したセルの上に水平な改ページを設定します。 - VPageBreaks【ブイページブレークス】コレクションのAddメソッド
指定したセルの左に垂直な改ページを設定します。
改ページを解除する方法
改ページを解除するには、以下のプロパティかメソッドを使用します。
- Range【レンジ】オブジェクトのPageBreak【ページブレーク】 プロパティ
指定したセルの上の水平、左の垂直の改ページを解除します。 - WorkSheet【ワークシート】オブジェクトのResetAllPageBreaks【リセットオールページブレークス】メソッド
ワークシート上のすべての改ページを解除します。
以上のプロパティやメソッドについての解説をします。
PageBreak【ページブレーク】 プロパティ
指定したセル範囲に改ページを設定するには、Range【レンジ】オブジェクトのPageBreak【ページブレーク】 プロパティを使用します。Break【ブレーク】切断するという意味があります。
PageBreak【ページブレーク】 プロパティの書式と設定値の説明
オブジェクト.PageBreak = 設定値
- オブジェクト(必須)
改ページを設定するRangeオブジェクトを指定します。選択したセルの上に水平、左に垂直の改ページが設定されます。改ページが設定できないセルや行、列(A1セル、Rows(1)、Columns(1))を設定した場合はエラーになります。 - 設定値(必須)
改ページの挿入方法をXlPageBreak 列挙型の定数で指定します。
定数 | 内容 |
---|---|
xlPageBreakManual | 改ページは手動で挿入されます。 指定した位置にする場合に指定します。 |
xlPageBreakNone | ワークシートに改ページは挿入されません。 改ページを解除する場合に指定します。 |
xlPageBreakAutomatic | Excel が自動的に改ページを追加します。 |
E10セルを基準に改ページを設定するコード例
Sub 改ページ() ActiveSheet.Range("E10").PageBreak = xlPageBreakManual End Sub
実行結果
データ範囲に5行おきに改ページを設定するコード例
Sub 改ページ2() Dim i As Long Dim 最終行 As Long 最終行 = Cells(Rows.Count, 1).End(xlUp).Row For i = 6 To 最終行 Step 5 ActiveSheet.Rows(i).PageBreak = xlPageBreakManual Next i End Sub
実行結果
※改ページを解除する場合は上記のコード例の場合、PageBreakプロパティの設定値をxlPageBreakNoneに指定します。
HPageBreaks.Addメソッド
水平な改ページを設定するにはHPageBreaks【エイチページブレークス】コレクションの
Add【アド】メソッドを使用します。HPageBreaksのHはHorizontal【ホリゾンタル】の略で、水平という意味がありHPageBreaks【エイチページブレークス】コレクションはワークシート内のすべての水平な改ページを表すコレクションでWorksheet【ワークシート】オブジェクトのHPageBreaks【エイチページブレークス】プロパティを使用して取得します。
HPageBreaks.Addメソッドの書式と設定値(引数)の説明
オブジェクト.HPageBreaks.Add( Before )
- オブジェクト(必須)
Worksheets【ワークシーツ】コレクションまたは、Worksheet【ワークシート】オブジェクトを指定します。 - Before【ビフォア】(必須)
水平な改ページを挿入したい下側のセル(Rangeオブジェクト)を指定します。
※1シートに挿入できる改ページは1026までです。1行目のセルや最終セル1048576行を超えた行のセルを指定するとエラーになります。
A10セルの上に水平な改ページを設定するコード例
Sub 改ページ3() ActiveSheet.HPageBreaks.Add Range("A10") End Sub
VPageBreaks.Addメソッド
垂直な改ページを設定するにはVPageBreaks【ブイページブレークス】コレクションのAdd【アド】メソッドを使用します。VPageBreaksのVはVertical【バーティカル】の略で、垂直という意味があります。VPageBreaks【ブイページブレークス】コレクションはワークシート内のすべての垂直な改ページを表すコレクションでWorksheet【ワークシート】オブジェクトのVPageBreaks【ブイページブレークス】プロパティを使用して取得します。
VPageBreaks.Addメソッドの書式と設定値(引数)の説明
オブジェクト.VPageBreaks.Add( Before )
- オブジェクト(必須)
Worksheets【ワークシーツ】コレクションまたは、Worksheet【ワークシート】オブジェクトを指定します。 - Before【ビフォア】(必須)
垂直な改ページを挿入したい左側のセル(Rangeオブジェクト)を指定します。
1列目のセルを設定した場合はエラーになります。
5列目の左に垂直な改ページを設定するコート例
Sub 改ページ4() ActiveSheet.VPageBreaks.Add Range("E1") End Sub
ResetAllPageBreaks【リセットオールページブレークス】メソッド
すべての改ページを解除するには、Worksheet【ワークシート】オブジェクトのResetAllPageBreaks【リセットオールページブレークス】メソッドを使用します。
ResetAllPageBreaks【リセットオールページブレークス】メソッドの書式と設定値の説明
オブジェクト.ResetAllPageBreaks
- オブジェクト(必須)
Worksheet【ワークシート】オブジェクトを指定します。
アクティブシートの改ページをすべて解除するコート例
Sub 改ページ解除() ActiveSheet.ResetAllPageBreaks End Sub
まとめ
改ページを設定する場合は、PageBreak【ページブレーク】 プロパティが便利に使用できると思います。また、新たに改ページを設定する場合は、ResetAllPageBreaks【リセットオールページブレークス】メソッドですべての改ページを解除してから設定することをおすすめします。
PageBreakプロパティとResetAllPageBreaksメソッドを使用したコード例リンク
以上で、改ページを設定する方法についての解説を終了します。ありがとうございました。