シーゴの Excel 研究室

タイトル変更しました (旧称:今日を乗り切るExcel研究所)

印刷範囲の点線の表示を切り替えたい

Excel シートの印刷範囲の「ページ区切り」の点線を消したり表示する方法とマクロを紹介します。

シートの印刷範囲の境界の点線を表示したい

セルの枠線の一部に細い点線が入ることがありすね。

これは印刷した時に1枚の紙に収まるセル範囲の境界を示していて、「ページ区切り」と呼ぶようです。

これが表示されるのは、「印刷プレビュー」や「改ページプレビュー」でシートを表示した後に標準表示に戻った時のシートです。

また、「改ページプレビュー」で自分が動かした青いページ区切りも、標準表示の方で(点線ではなく)細い実線で表示されます。

Excel にはなぜかこのページ区切りの表示/非表示を切り替えるコマンドが用意されていません。

Excel の機能というより、一種の気を利かせたサービスなのでしょう。

確かにまっさらなシートでページ区切りを表示しておくと、印刷時のレイアウトの目安になって助かることもあります。

一方、控えめで微妙に目立たない点線が一度意識するとかえって気になりはじめ、それもなかなか消えてくれないのでイライラのモトになります。

手作業でページ区切りを表示・非表示するには

ページ区切りを消すには、いったんファイルを閉じて開きなおすしかないようです。

ページ区切りの表示自体を止めたいときには、「オプション」(AltTO)の「詳細設定」タブにある「次のシートで作業する表示設定」⇒「改ページを表示する」のチェックを外します。

この設定はシートごとに指定します。

【手順例】ページ区切りの表示

  1. 「表示」タブで「ページレイアウト」を選択して、ページレイアウトで表示します
  2. 「標準」を選択して標準表示します

【手順例】ページ区切りの非表示

  1. ファイルを保存していったん閉じます
    • キー操作: Ctrl + SCtrl + W
  2. ファイルを開きなおします
    • キー操作: AltFO1(たぶん)

 



ページ区切りの表示・非表示を切り替えるマクロ

以下のマクロ VBA はページ区切りの表示状態を切り替えます。

マクロを実行するたびに、ページ区切りの表示と非表示が切り替わります。

切り替え対象に、現在のシートのみと、ファイル内の全シート一括の2つのマクロを用意しました。

Option Explicit

Sub ページ区切りの表示切替え()
    ActiveSheet.DisplayPageBreaks = Not ActiveSheet.DisplayPageBreaks
End Sub

Sub ページ区切りの表示切替え_全シート()
    Dim br As Boolean
    br = Not ActiveSheet.DisplayPageBreaks
    
    Dim sh As Worksheet
    For Each sh In ActiveWorkbook.Worksheets
        sh.DisplayPageBreaks = br
    Next
End Sub

【使い方】

  1. VBA 標準モジュールに上記の VBA ソースをコピー&ペーストします
  2. マクロを実行します
  3. ページ区切りの表示状態が切り替わっています。

Windows 10 の Excel 2013 で動作確認をしました。