見出し画像

改ページを設定する

 Excel VBAで改ページを設定するには、主に以下の2つの方法があります。

  1. セル範囲指定による方法

 横方向の改ページ

VBA
Sub HPageBreak()

' 対象ワークシートを指定
Worksheets("対象シート名").Activate

' 改ページ挿入位置のセルを指定
Set rng = Range("A1") ' セルA1に改ページを挿入

' 横方向の改ページを挿入
rng.HPageBreaks.Add

End Sub
コードは注意してご使用ください。

縦方向の改ページ

VBA
Sub VPageBreak()

' 対象ワークシートを指定
Worksheets("対象シート名").Activate

' 改ページ挿入位置のセルを指定
Set rng = Range("A1") ' セルA1の左側に改ページを挿入

' 縦方向の改ページを挿入
rng.VPageBreaks.Add

End Sub
コードは注意してご使用ください。

  1. PageSetupプロパティによる方法

横方向の改ページ

VBA
Sub HPageBreakWithPageSetup()

' 対象ワークシートを指定
Worksheets("対象シート名").Activate

' 印刷範囲を設定
ActiveSheet.PageSetup.PrintArea = Range("A1:B10") ' セルA1:B10を印刷範囲に設定

' 横方向の改ページ位置を指定
ActiveSheet.PageSetup.HPageBreaks = 5 ' 5番目の行に横方向の改ページを挿入

End Sub
コードは注意してご使用ください。

縦方向の改ページ

VBA
Sub VPageBreakWithPageSetup()

' 対象ワークシートを指定
Worksheets("対象シート名").Activate

' 印刷範囲を設定
ActiveSheet.PageSetup.PrintArea = Range("A1:B10") ' セルA1:B10を印刷範囲に設定

' 縦方向の改ページ位置を指定
ActiveSheet.PageSetup.VPageBreaks = 5 ' 5列目に縦方向の改ページを挿入

End Sub
コードは注意してご使用ください。

補足

 上記のコードはあくまで一例です。必要に応じて、セル範囲や改ページ位置を変更してください。
 改ページはあくまで印刷時の挙動を制御するための機能であり、Excel上での表示やデータの配置には直接的な影響を与えません。
 印刷プレビューや印刷時に改ページの効果を確認することをおすすめします。
 複数の改ページを設定する場合は、それぞれ異なるセル範囲やPageSetupプロパティを設定する必要があります。
VBAで改ページを設定する場合、印刷範囲と改ページ位置を意識することが重要です。印刷範囲外のセルには改ページの影響が及ばないため、意図したレイアウトにならない可能性があります。
参考資料

【ExcelVBA 印刷】水平方向/垂直方向に改ページを挿入する方法について教えて! https://www.osiete-excelvba.work/entry/20210504/1620118571
 
 VBAで改ページを設定・解除したい人必見!手順を分かりやすく解説 | 侍エンジニアブログ https://www.sejuku.net/blog/88251
 
 改ページの挿入と印刷範囲を設定について - EXCEL VBA 業務の自動化を目指す https://gyoumujidou.jp/2021/11/05/改ページ挿入について/

この記事が気に入ったらサポートをしてみませんか?