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

ワークシートの印刷を行いたい場合は PrintOut メソッドを使用します。ブック内の複数シートを選択して印刷することも可能です。引数 Preview に True を設定することで、プレビュー表示することもできます。

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

スポンサーリンク

PrintOutメソッドの使用方法

構文
object.PrintOut _
    [From], [To], [Copies], [Preview], [ActivePrinter], _
    [PrintToFile], [Collate], [PrToFileName], [IgnorePrintAreas]

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

引数名 省略 定数/
データ型
説明
From バリアント型(Variant) 印刷を開始するページの番号を指定します。この引数を省略すると、最初のページから印刷します。
To バリアント型(Variant) 印刷を終了するページの番号を指定します。この引数を省略すると、最後のページまで印刷します。
Copies バリアント型(Variant) 印刷部数を指定します。この引数を省略すると、印刷部数は 1 部になります。
Preview ブール型(Boolean) True の場合、印刷をする前に印刷プレビューを実行します。False、または省略した場合、直ちに印刷を行います。
ActivePrinter バリアント型(Variant) アクティブなプリンタの名前を指定します。
PrintToFile ブール型(Boolean) True の場合、ファイルへ出力します。引数 PrToFileName が省略された場合、出力先のファイル名を指定するためのダイアログ ボックスを表示します。
Collate ブール型(Boolean) True の場合、部単位で印刷します。
PrToFileName バリアント型(Variant) 引数 PrintToFile が True の場合、この引数に印刷したいファイルの名前を指定します。
IgnorePrintAreas ブール型(Boolean) True の場合、印刷範囲を無視してオブジェクト全体を印刷します。

PrintOutメソッドの使用例

ワークシート1枚の印刷

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

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

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

        '印刷
        .PrintOut
    End With
End Sub

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

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

マクロを実行すると直ちに印刷がはじまります。下図は、印刷イメージをプリンターへ出力せずに、ファイルへ保存したものになります。

sample_eb07f_01 実行後
sample_eb07f_01 実行後

全ワークシートの印刷

ブック内の全シートを印刷する例です。

Sub sample_eb07f_02()
    'ブック内全シートの印刷
    Worksheets.PrintOut
End Sub

複数ワークシートの印刷

ブック内の複数ワークシートを印刷する例です。

Sub sample_eb07f_03()
    Dim varSheets As Variant

    '印刷したいシート名の配列
    varSheets = Array("2014年度", "2016年度")

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

    '選択シートの印刷
    ActiveWindow.SelectedSheets.PrintOut
End Sub

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

ページ指定した印刷プレビューを表示する例です。マクロを実行するとまずプレビュー画面が表示されますので、その画面で印刷ボタンを押下すると印刷がはじまります。

Sub sample_eb07f_04()
    'アクティブシートの2~3ページの印刷プレビューを表示
    ActiveSheet.PrintOut From:=2, To:=3, Preview:=True
End Sub
タイトルとURLをコピーしました