エクセルで表を作成して印刷をする前に用紙の範囲に印刷できるか気になるので、改ページプレビューで確認することありませんか?
ボタン一つで標準モードにも切り替えられる「ON/OFF切替ボタン」があると便利なので、エクセルVBAのActiveWindow.Viewを使って作る方法をご紹介します。
ActiveWindow.Viewでモード指定
エクセルワークシート自体にコマンドボタンを配置する方法と、いつものようにユーザーフォームのコマンドボタンで操作する方法2つ記載します。
ワークシートにコマンドボタンを配置
普段はユーザーフォームを使用するので、あまりやらない方法なのですが、改ページプレビューだけならば、この方法もありかもしれませんね。

ワークシートに直接コマンドボタンを配置するならば、「開発」➡「挿入」➡「コマンドボタン」でワークシートに配置できます。

次に、ワークシートに配置をしたらコマンドボタンにVBAコードを記述しましょう。
Sub 表示モード切替()
ActiveWindow.View = xlPageBreakPreview
End Sub
- 「表示モード切替」という名前のマクロを記述する
- アクティブウィンドウの表示モードを改ページプレビューに切り替える
- マクロ記述終了
作成した「コマンドボタン1」をクリックするとこのように改ページプレビューに表示切替できました。

ユーザーフォームのコマンドボタンに記述
オリジナル入力画面のユーザーフォームにコマンドボタンを配置してVBAコードを記述するいつもの方法です。
Private Sub CommandButton1_Click()
ActiveWindow.View = xlPageBreakPreview
End Sub
- コマンドボタン1がクリックされたら
- アクティブウィンドウの表示モードを改ページプレビューに切り替える
- マクロ記述終了

ちなみに、標準モードで表示するには定数を変更し、定数は下記のように決まっています。
表示モード | 定数 |
標準モード | xlNormalView |
改ページプレビュー | xlPageBreakPreview |
クリックするたびに標準/改ページプレビューに切り替え
改ページプレビューに表示を切り替えたり、標準に戻したりできるボタンを作れば、コマンドボタンを押すたびに表示モードが切り替わるので便利ですよね。
これができれば、わざわざ改ページプレビュー用のボタンと、標準に戻すボタンの2つ用意する必要がなくなります。
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がクリックされたら
- もし、表示モードが標準だったら
- 表示モードを改ページプレビューに切り替える
- そうでなく改ページプレビューだったら
- 標準モードに切り替える
- Ifステートメント終了
- マクロ記録終了
If~Thenを使って、もし標準だったら改ページプレビューにして、そうでない場合(改ページプレビュー)だったら、標準に戻すって書くだけです。



このようにボタン1つで表示を切り替えたり元に戻したりできると便利なので、ほかの表示方法も知っていて損はないと思いますよ!
関連記事
-
エクセルVBAコマンドボタンでON/OFF切替スイッチを作る方法
ワークシート上にある罫線やリボンなど7つの項目を表示したり非表示することができる切替ボタンがあったら便利だと思いませんか? 不要な項目をワンクリックで切り替え… -
ワークシートサイズは常に最大化してエクセル画面を表示するVBA
エクセルファイルを開いたら中途半端なサイズで表示されるようになってしまった事ありませんか? 作業するのにはフルサイズでの画面最大化の方が良いので、VBAを使って… -
エクセルシートで指定した範囲を自動的に画面最大化させるVBA方法
エクセルで作成した表がいつも画面いっぱいに表示されるならばいいのですが、スクロールしないと見られない範囲外ってことありませんか? Excel-VBAを使えばいつも指定… -
エクセルワークシート下にあるシート名の部分を非表示化する方法
苦労してExcel-VBAを組み込んだエクセルファイルを他人に渡して使ってもらうと、エラー表示になったと言われたことありませんか? 原因は簡単で、エクセル操作をオリジ… -
指定したセルを画面左上にスクロールする
【画面左上は移動はscrollrowとscrollcolumnを組み合わせる】 ボウリング場のリーグ戦の成績表でも使っているエクセルで、リーグ戦参加者の成績表を入力する為の専用フ… -
エクセルのメニューリボン(操作パネル)をVBAで非表示にする方法
苦労してExcel-VBAを組み込んだエクセルファイルを他人に渡して使ってもらうと、エラー表示になったと言われたことありませんか? 原因は簡単で、エクセル操作をオリジ… -
エクセルVBAで改ページプレビューと標準モード切替ボタンを作る方法
エクセルで表を作成して印刷をする前に用紙の範囲に印刷できるか気になるので、改ページプレビューで確認することありませんか? ボタン一つで標準モードにも切り替えら… -
VBAの画面のちらつきがたった1行で解決して処理高速化する方法
エクセルで繰り返し作業を効率よくするためにVBAを活用している時に、コマンドボタンを押したら画面が一瞬スクロールしたりシートが切り替わったりして目障りに思ったこ… -
エクセルVBAでセルの枠線の表示を表示・非表示を切り替えるボタン
エクセルのワークシート上にはセルの仕切り「枠線」が表示されていますが、消したいこと(非表示化)ありませんか? ホームページやブログに画像として取り込む時に、枠…
紅葉スポット
-
那須岳・那須ロープウェイへ那須塩原駅や黒磯駅からバスで行く
天皇皇后両陛下や皇族の方々のご静養の場所があるほど、自然豊かな那須高原のシンボルでもある那須岳は、夏は過ごしやすい避暑地として、秋には色とりどりの木々の紅葉… -
フリーパスで12月の茨城紅葉スポットへ
【茨城県内の人気紅葉スポット】 関東地方で紅葉名所といえばなんといっても日光ですが、紅葉シーズンになると平日でもいろは坂は大渋滞なのに休日ともなると日光駅周辺… -
桜山公園へバスで群馬藤岡駅や本庄駅から冬桜と紅葉のコラボへ
なんと春と秋の年2回花見ができるので冬桜の名所として知られ、紅葉の見頃には冬桜と真っ赤な紅葉の紅葉が同時に見られることでも知られています。 また桜山公園ハイキ… -
白馬岩岳の絶景「三段紅葉」へ長野駅からバスで滞在時間140分
10月下旬ごろ~11月上旬になるとテレビなどでよく話題になる絶景のビューポイントで、北アルプスの山頂が雪化粧をして赤く色づいた山麓、そして山のふもとはまだ緑色が… -
茨城県大子町の永源寺へ常陸大子駅から徒歩圏内の紅葉スポットへ
【紅葉見頃】 茨城県の大子町に紅葉名所の「永源寺」があり、境内を埋め尽くすほどのもみじの木があることから「もみじ寺」と呼ばれています。 近くには名瀑で有名な… -
乗り鉄必見の紅葉列車でわたらせ渓谷鉄道車窓の紅葉景色へ
【紅葉見頃】11月上旬~11月下旬 旧国鉄・足尾線を引き継いだわたらせ渓谷鉄道は、渡良瀬川沿いを走るローカル線で渓谷沿いの紅葉がとても綺麗に見ることができるので…