各行の高さを合計して、ページ内に収まるかを判定。A4の印刷可能範囲の高さ(ポイント単位)と比較。オーバーするならその直前に 改ページを入れる。 A4用紙の印刷可能な高さ(おおよそ) A4縦の高さ:29.7 cm = 約842 pt 上下余白(例):2cm + 2cm ≒ 113 pt(計) ⇒ 実質印刷可能範囲:約729 pt ※余白・ヘッダー・フッターにより変動 コード例 Sub 自動改ページ_行数と印刷高さを基準に() Dim ws As Worksheet Dim i As Long Dim rowHeightSum As Double Dim printHeightLimit As Double Dim lastRow As Long Set ws = ThisWorkbook.Sheets("Sheet1") ws.ResetAllPageBreaks ' 印刷可能な高さを計算(A4縦:842pt - 上下余白 約113pt) printHeightLimit = 842 - 113 rowHeightSum = 0 lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row For i = 1 To lastRow rowHeightSum = rowHeightSum + ws.Rows(i).RowHeight If rowHeightSum > printHeightLimit Then ' この行の直前で改ページを入れる ws.HPageBreaks.Add Before:=ws.Rows(i) rowHeightSum =ws.Rows(i).RowHeight ' 次ページの高さリセット End If Next i MsgBox "改ページを設定しました。" End Sub