ワークシートのウィンドウ表示モード
「標準」「ページ レイアウト」「改ページ プレビュー」
をVBAから設定する方法を解説します。
設定にはWindowオブジェクトの「View」プロパティを使用し、
以下のコードを実行します。
' 設定したいシートをアクティブに Thisworkbook.Worksheets("○○").Activate ' アクティブシート(ウィンドウ)を 改ページ プレビュー モードに設定 ActiveWindow.View = xlPageBreakPreview ' アクティブシート(ウィンドウ)を ページ レイアウト モードに設定 ActiveWindow.View = xlPageLayoutView ' アクティブシート(ウィンドウ)を 標準 モードに設定 ActiveWindow.View = xlNormalView
ViewプロパティはWorksheetではなくWindowオブジェクトの機能であるため、
実行前に対象のWorksheetをActiveSheetにする必要があります。
※ Windowオブジェクト自体はブック名を渡して取得することもできますが、
ActiveSheetを変更するためには結局ActiveWorkbookを変更する必要があるためです。
ただしこのプロパティは複数の選択シートにも実行できますので、
すべてのシートに同じ設定を行いたい場合は以下のコードでも実行できます。
' すべてのシートを選択 Thisworkbook.Activate Thisworkbook.Worksheets.Select ' すべてのシートを一括で標準モードに設定 ActiveWindow.View = xlNormalView
For文を書くより簡単ですので、この書き方も知っておきましょう。
また、このViewプロパティは読み取ることもできます。
例えば「ページレイアウト」になっているすべてのシートを「改ページプレビュー」に変更する場合は、以下のコードを実行します。
' 対象のブックをActivate ThisWorkbook.Activate ' 全シートをループして順に選択 Dim ws As Worksheet For Each ws In ThisWorkbook.Worksheets ws.Select ' ページレイアウトになっているシートを改ページプレビューに If ActiveWindow.View = xlPageLayoutView Then ActiveWindow.View = xlPageBreakPreview End If Next
特定のシートにだけ設定を行いたいときは、
こちらのコードをカスタマイズしてご利用下さい。