関数・メソッド

印刷総ページ数を取得する【Pages.Countプロパティ】【ExcelVBA】

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

関連記事

コメント

タイトルとURLをコピーしました