印刷前に印刷する総ページ数を取得したいケースがあります。
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でループさせる必要があります。
- 非表示のシートは、総ページ数に足されません。
コメント