印刷前に印刷する総ページ数を取得したいケースがあります。
Pages.Countプロパティで必要なシート数を取得可能です。
印刷総ページ数を取得する【Pages.Count】サンプルコード
Public Sub sample()
'■印刷総ページ数を取得する(現在のシート)
Debug.Print ActiveSheet.PageSetup.Pages.Count
'■印刷総ページ数を取得する(現在のブック内の全てのシート)
Dim ws As Worksheet
Dim num As Long: num = 0
'■Forでループして全てのシートを対象に調査
For Each ws In ActiveWorkbook.Worksheets
num = num + ws.PageSetup.Pages.Count
Next
■総ページ数を表示
Debug.Print num
End Sub
注意点
- PageSetupはWorkbookオブジェクトが指定できないため、Forでループさせる必要があります。
- 非表示のシートは、総ページ数に足されません。



コメント