印刷される総ページ数を取得する方法
印刷される総ページ数を取得するには、Pages【ページズ】コレクションのCount【カウント】プロパティを使用します。Pages【ページズ】コレクションは、印刷されるすべてのページを表すコレクションでPageSetUp【ページセットアップ】オブジェクトのPages【ページズ】プロパティで参照します。
印刷ページ設定を表すPageSetUp【ページセットアップ】オブジェクトを取得するには、Worksheet【ワークシート】オブジェクトやChart【チャート】オブジェクトのPageSetUp 【ページセットアップ】プロパティを使用して取得します。
PageSetUp 【ページセットアップ】プロパティ
印刷ページ設定を表すPageSetUp【ページセットアップ】オブジェクトを取得するには、Worksheet【ワークシート】オブジェクトまたは、Chart【チャート】オブジェクトのPageSetUp 【ページセットアップ】プロパティを使用します。
PageSetUp 【ページセットアップ】プロパティの書式と設定値の説明
オブジェクト.PageSetUp
- オブジェクト(必須)
Worksheet【ワークシート】オブジェクトまたは、Chart【チャート】オブジェクトを指定します。
※Workbook【ワークブック】オブジェクトを指定するとエラーになります。
Pages.Count【ページズカウント】プロパティ
印刷される総ページ数を取得するには、Pages【ページズ】コレクションのCount【カウント】プロパティを使用します。
Pages.Count【ページズカウント】プロパティの書式と設定値
オブジェクト.Pages.Count
【戻り値】長整数型 (Long) の値
- オブジェクト(必須)
印刷ページ設定を表すPageSetUp【ページセットアップ】オブジェクトを指定します。
※値の取得のみ可能です。
アクティブシートの印刷される総ページ数を取得してメッセージで表示するコード例
Sub シート印刷枚数() MsgBox "印刷ページは" & ActiveSheet.PageSetup.Pages.Count & " ページです。" End Sub
ブック全体の印刷総ページ数を取得する方法
Workbook【ワークブック】オブジェクトは、印刷ページ設定を表すPagesetUp【ページセットアップ】オブジェクトを参照できないため
ブック全体の印刷総ページ数を取得するには、個別のワークシートの総ページ数を取得してその数を合算して算出します。
ブック内の印刷される総ページを取得してメッセージで表示するコードと解説
Sub ブック印刷枚数() Dim ページ As Long Dim シート As Worksheet ページ = 0 For Each シート In ActiveWorkbook.Worksheets ページ = ページ + シート.PageSetup.Pages.Count Next MsgBox "印刷ページは" & ページ & "ページです。" End Sub
印刷ページ数を格納する変数「ページ」を長整数型(Long)で宣言します。
3行目【Dim シート As Worksheet】
ブック内のシートを格納する変数「シート」をオブジェクト型(Worksheet)で宣言します。
4行目【ページ = 0】
変数「ページ」に0を代入します。
5行目【For Each シート In ActiveWorkbook.Worksheets】
For Each【フォアイーチ】ステートメントでオブジェクト変数の「シート」に
ブック内のワークシートを繰り返し処理の中で順に代入します。
6行目【ページ = ページ + シート.PageSetup.Pages.Count】
繰り返し処理の中で順にブック内のシートが代入された変数「シート」に格納されたシートに対してPages【ページズ】コレクションのCount【カウント】プロパティで印刷ページ数を取得して変数「ページ」に代入します。繰り返しの2回目からは前回取得したページ数を今回取得したページ数に加算して変数「ページ」に代入することでブック内のすべての印刷ページ数を変数「ページ」に格納します。
8行目【MsgBox “印刷ページは” & ページ & “ページです。”】
MsgBox【メッセージボックス】関数を使用してページ数を表示します。
以上で、印刷される総ページ数を取得するPages.Count【ページーズカウント】プロパティについての解説を終了します。ありがとうございました。