エクセルVBAで改ページプレビューと標準モード切替ボタンを作る方法

エクセル検索
HOMEUserForm印刷画面ファイル図形
日付・時刻データセル関数VBA関数

エクセルで表を作成して印刷をする前に用紙の範囲に印刷できるか気になるので、改ページプレビューで確認することありませんか?

ボタン一つで標準モードにも切り替えられる「ON/OFF切替ボタン」があると便利なので、エクセルVBAのActiveWindow.Viewを使って作る方法をご紹介します。

ActiveWindow.Viewでモード指定

エクセルワークシート自体にコマンドボタンを配置する方法と、いつものようにユーザーフォームのコマンドボタンで操作する方法2つ記載します。

ワークシートにコマンドボタンを配置

普段はユーザーフォームを使用するので、あまりやらない方法なのですが、改ページプレビューだけならば、この方法もありかもしれませんね。

改ページプレビューワークシート
改ページプレビューワークシート

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

改ページプレビューワークシート2
改ページプレビューワークシート

次に、ワークシートに配置をしたらコマンドボタンにVBAコードを記述しましょう。

VBAコード

Sub 表示モード切替()
ActiveWindow.View = xlPageBreakPreview
End Sub

解説
  1. 「表示モード切替」という名前のマクロを記述する
  2. アクティブウィンドウの表示モードを改ページプレビューに切り替える
  3. マクロ記述終了

作成した「コマンドボタン1」をクリックするとこのように改ページプレビューに表示切替できました。

改ページプレビュ
改ページプレビューになりました

ユーザーフォームのコマンドボタンに記述

オリジナル入力画面のユーザーフォームにコマンドボタンを配置してVBAコードを記述するいつもの方法です。

VBAコード

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

解説
  1. コマンドボタン1がクリックされたら
  2. アクティブウィンドウの表示モードを改ページプレビューに切り替える
  3. マクロ記述終了
波乗りアヒル

ちなみに、標準モードで表示するには定数を変更し、定数は下記のように決まっています。

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

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

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

これができれば、わざわざ改ページプレビュー用のボタンと、標準に戻すボタンの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つで表示を切り替えたり元に戻したりできると便利なので、ほかの表示方法も知っていて損はないと思いますよ!

関連記事

どこかにビューーン
ちょっとの工夫で往復無料の時代が来た!!

新着ページ

よく見られているページ

大容量無料ファイル転送サービス【ACデータ】 無料イラスト【イラストAC】

紅葉スポット

2024年5月11日からマイルと楽天ポイントとの相互交換提携開始!

交換レート0.5:1なので半分になってしまいますが、使い方次第で実質3倍の価値まで引き上げられる方法です。