Excelで作成した資料を印刷する前に「全部で何ページになるか」をマクロで取得したり、編集作業中に表示される「改ページの点線が煩わしい」と感じたりすることはありませんか?
VBAを使えば、これらの情報を簡単に取得・操作することが可能です。この記事では、実務で役立つ2つの短いコード、**「印刷総ページ数を計算する方法」と「改ページの区切り線の表示・非表示を切り替える方法」**を解説します。
印刷の総ページ数を取得する方法
シートが印刷時に合計で何ページになるかは、水平・垂直両方の改ページ(PageBreak)の数を数えることで計算できます。
コードと解説
Sub ShowTotalPrintPages()
' 変数を宣言します
Dim targetSheet As Worksheet
Dim horizontalBreaks As Long
Dim verticalBreaks As Long
Dim totalPages As Long
' 現在アクティブなシートを操作対象に設定
Set targetSheet = ActiveSheet
' 水平方向(横)の改ページの数を取得
horizontalBreaks = targetSheet.HPageBreaks.Count
' 垂直方向(縦)の改ページの数を取得
verticalBreaks = targetSheet.VPageBreaks.Count
' 総ページ数を計算
totalPages = (horizontalBreaks + 1) * (verticalBreaks + 1)
' 結果をメッセージボックスで表示
MsgBox "このシートの総印刷ページ数は " & totalPages & " ページです。"
End Sub
この計算のポイントは、**「ページの数 = 改ページの数 + 1」**という関係が成り立つ点です。
- 横方向に1つも改ページがなければ、横のページ数は1です (
0 + 1 = 1)。 - 横方向に1つ改ページがあれば、横のページ数は2です (
1 + 1 = 2)。
総ページ数は、この**「横方向のページ数」と「縦方向のページ数」を掛け合わせる**ことで求められます。このコードは、印刷範囲の設定や拡大縮小率を反映した現在の状態でのページ数を返します。
改ページの点線を非表示にする方法
一度印刷プレビューなどを行うと、シート上にページの区切りを示す点線が表示されます。この表示は、VBAで簡単にオン・オフを切り替えることができます。
コードと解説
Sub HidePageBreakLines()
' 現在のシートの改ページの点線を非表示にする
ActiveSheet.DisplayPageBreaks = False
End Sub
Sub ShowPageBreakLines()
' 現在のシートの改ページの点線を表示する
ActiveSheet.DisplayPageBreaks = True
End Sub
.DisplayPageBreaksは、ワークシートが持つプロパティ(設定値)の一つです。
ActiveSheet.DisplayPageBreaks = False: この値をFalseにすると、点線が非表示になります。ActiveSheet.DisplayPageBreaks = True: この値をTrueにすると、点線が表示されます。
これらのマクロをクイックアクセスツールバーなどに登録しておくと、ボタン一つで表示を切り替えられるようになり、編集作業が快適になります。
まとめ
今回は、印刷と表示に関する2つの便利なVBAテクニックをご紹介しました。
- 総ページ数の取得:
(HPageBreaks.Count + 1) * (VPageBreaks.Count + 1)で計算できる。 - 改ページの点線の表示/非表示:
ActiveSheet.DisplayPageBreaksプロパティの値をTrueまたはFalseに設定する。
どちらも短いコードで実現できるため、ご自身のマクロに組み込んだり、日々の業務効率化ツールとして活用したりしてみてください。
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
