ワークシートのPrintPreviewメソッド

ワークシートの印刷プレビューを表示したい場合は PrintPreview メソッドを使用します。複数のシートを選択状態にした後、PrintPreview メソッドを使用することで複数シートの印刷プレビューを表示することもできます。

PrintPreview メソッドではプレビュー表示のページ指定はできません。この場合は PrintOut メソッド のページ指定オプションとプレビューオプションを使用することで、ページ指定した印刷プレビューを表示することができます。

スポンサーリンク

PrintPreviewメソッドの使用方法

構文
object.PrintPreview( [EnableChanges] )

※objectはワークシートオブジェクトを表す変数

引数名 省略 定数/データ型 説明
EnableChanges ブール型(Boolean) 余白など、印刷プレビューで設定可能なページ設定オプションをユーザーが変更すること可能にする場合は True を設定します。(既定値)

PrintPreviewメソッドの使用例

印刷ヘッダー、用紙サイズ指定

印刷ヘッダーや、用紙サイズなどの設定してからプレビュー表示する例です。

Sub sample_eb07e_01()
    With Worksheets("2016年度")
        '印刷ヘッダー設定(太字、18pt、シート名表示)
        .PageSetup.CenterHeader = "&B&18&A 売上一覧表"
        '日付表示
        .PageSetup.RightHeader = "印刷日 : &D"

        '用紙サイズ、方向
        .PageSetup.PaperSize = xlPaperA4
        .PageSetup.Orientation = xlPortrait

        '印刷プレビュー表示
        .PrintPreview
    End With
End Sub

 印刷ヘッダー・フッター Withステートメント

ワークシート”2016年度”には売上一覧表があります。

ブック内のシート
ブック内のシート

マクロを実行すると売上一覧表のプレビューが表示されました。

sample_eb07e_01 実行後
sample_eb07e_01 実行後

参考 – 引数に False を指定した場合

PrintPreview メソッドの引数に False を指定すると、印刷プレビューリボンからページ設定ができなくなります。ユーザーに印刷設定を勝手に変更されたくない場合はこうするとよいでしょう。

印刷プレビューリボン
印刷プレビューリボン

全シートの印刷プレビューを表示

ブック内全シートの印刷プレビューを表示する例です。

Sub sample_eb07e_02()
    'ブック内全シートの印刷プレビュー表示
    Worksheets.PrintPreview
End Sub

複数シートの印刷プレビューを表示

複数シートの印刷プレビューを表示する例です。印刷対象シート名を配列に格納し、Selectメソッドで選択してから、プレビュー表示します。

Sub sample_eb07e_03()
    Dim varSheets As Variant

    '印刷プレビューで表示したいシート名の配列
    varSheets = Array("2014年度", "2016年度")

    'シート選択
    Worksheets(varSheets).Select

    '選択シートのプレビューを表示
    ActiveWindow.SelectedSheets.PrintPreview
End Sub

 ページを指定した印刷プレビューを表示する

タイトルとURLをコピーしました