エクセルVBAを使って標準画面と改ページプレビューを切り替える方法

画面改ページプレビューVBA

文書や表などを作って印刷範囲を確認する時に、正しく印刷できるかの範囲を改ページプレビューを使う時に、「表示」「改ページ」と毎回クリックするのって面倒だと思いませんか?

たった1行のViewプロパティを使ってVBAコードを書くだけで簡単に切替できるようになりますよ。

目次

Viewプロパティ

通常のワークシートを「標準」(初期設定)として、改ページプレビューがもう一つの表示モードと思えば難しくないですよね。

VIEWプロパティの既定値は以下のように決まっています。

定数表示モード
xlNormalView1標準
xlPageBreakPreview2改ページプレビュー

表示モードを改ページプレビューにする

ユーザーフォームに配置したコマンドボタンを押すと、標準から改ページプレビューに表示が切り替わるようにしましょう。

改ページプレビューに切り替えるVBA

Private Sub CommandButton1_Click()
ActiveWindow.View = xlPageBreakPreview
End Sub

解説
  1. コマンドボタン1が押されたら
  2. 表示中のエクセルワークシートの表示モードを改ページプレビューにする
  3. マクロ終了

これでコマンドボタン1が押されたら改ページプレビューに表示モードが変わります。

表示モードを標準に戻す

改ページプレビューにしたら、こんどは標準に戻せないと不都合なので戻すVBAコードを用意しましょう。

標準に戻すVBA

Private Sub CommandButton1_Click()
ActiveWindow.View = xlNormalView
End Sub

解説
  1. コマンドボタン1が押されたら
  2. 表示中のエクセルワークシートの表示モードを標準にする
  3. マクロ終了

表示モードの定数を変えるだけなのでとても簡単ですよね。

クリックするたびに標準/改ページプレビューに切り替え

改ページプレビューに表示を切り替えたり、標準に戻したりできるボタンを作れば、コマンドボタンを押すたびに表示モードが切り替わるので便利ですよね。

これができれば、わざわざ改ページプレビュー用のボタンと、標準に戻すボタンの2つ用意する必要がなくなります。

相互切り替えボタンVBA

Private Sub CommandButton1_Click()
If ActiveWindow.View = xlNormalView Then
ActiveWindow.View = xlPageBreakPreview
ElseIf ActiveWindow.View = xlPageBreakPreview Then
ActiveWindow.View = xlNormalView
End If
End Sub

解説
  1. コマンドボタン1が押されたら
  2. もし、表示モードが標準だったら
  3. 表示モードを改ページプレビューに切り替える
  4. そうでなく改ページプレビューだったら
  5. 標準モードに切り替える
  6. Ifステートメント終了
  7. マクロ記録終了

If~Thenを使って、もし標準だったら改ページプレビューにして、そうでない場合(改ページプレビュー)だったら、標準に戻すって書くだけです。

このようにボタン1つで表示を切り替えたり元に戻したりできると便利なので、ほかの表示方法も知っていて損はないと思いますよ!

目次