【VBA】PrintOutメソッドで印刷する|サンプルコード多数

Excel VBAを用いて印刷を行う際、PrintOutメソッドは非常に便利な機能です。この記事では、このメソッドの基本的な使い方から応用例、さらには多くの実用的なサンプルコードまでを提供します。

目次

PrintOutメソッドとは

基本的な使い方

PrintOutメソッドは、Excel VBAで印刷を制御するためのメソッドです。このメソッドを使うことで、プログラム上からExcelのシートを印刷することができます。

Worksheets("MySheet").PrintOut

このコードでは、MySheetと名付けられたワークシートが印刷されます。非常に簡単で、初心者でもすぐに使いこなせます。

設定項目の詳細

PrintOutメソッドには多くの設定項目があります。以下の表で主要なものを詳しく解説します。

設定項目説明
From印刷する開始ページを指定From:=2
To印刷する終了ページを指定To:=4
Copies印刷する部数を指定Copies:=3
Preview印刷プレビューを表示するかどうかPreview:=True

サンプルコード集

任意のワークシートを印刷

Sub PrintAnySheet()
    Dim wsName As String
    wsName = "MySheet"
    Worksheets(wsName).PrintOut
End Sub

このコードでは、変数wsNameに指定したワークシート名に基づいて印刷を行います。

開始・終了ページを指定して印刷

Sub PrintFromPage2To4()
    Worksheets("MySheet").PrintOut From:=2, To:=4
End Sub

このコードでは、MySheetの2ページ目から4ページ目までを印刷します。

3部印刷するサンプル

Sub PrintThreeCopies()
    Worksheets("MySheet").PrintOut Copies:=3
End Sub

このコードでは、MySheetを3部印刷します。

印刷プレビューを表示するサンプル

Sub ShowPrintPreview()
    Worksheets("MySheet").PrintOut Preview:=True
End Sub

このコードでは、MySheetの印刷プレビューを表示します。

複数の設定を組み合わせる

Sub CombinedSettingsPrint()
    Worksheets("MySheet").PrintOut From:=2, To:=4, Copies:=3, Preview:=True
End Sub

このコードでは、MySheetの2ページ目から4ページ目までを3部印刷し、その前にプレビューを表示します。

PrintOutメソッドに関するFAQ

Q:PrintOutメソッドの基本的な使い方は何ですか?

A:PrintOutメソッドの基本的な使い方は非常にシンプルです。例えば、Worksheets("Sheet1").PrintOutというコードで、”Sheet1″と名付けられたワークシートを印刷することができます。

Q:ページ範囲を指定して印刷する方法は?

A:ページ範囲を指定して印刷するには、FromToのパラメータを使用します。例:Worksheets("Sheet1").PrintOut From:=1, To:=3。このコードは、”Sheet1″の1ページ目から3ページ目までを印刷します。

Q:複数部数を印刷するにはどうすればいいですか?

A:複数部数を印刷するには、Copiesパラメータを使用します。例:Worksheets("Sheet1").PrintOut Copies:=2。このコードは、”Sheet1″を2部印刷します。

Q:印刷プレビューを表示する方法は?

A:印刷プレビューを表示するには、PreviewパラメータをTrueに設定します。例:Worksheets("Sheet1").PrintOut Preview:=True。このコードは、”Sheet1″の印刷プレビューを表示します。

Q:複数の設定を同時に指定する方法は?

A:複数の設定を同時に指定するには、各パラメータをカンマで区切って指定します。例:Worksheets("Sheet1").PrintOut From:=1, To:=3, Copies:=2, Preview:=True。このコードは、”Sheet1″の1ページ目から3ページ目までを2部印刷し、その前にプレビューを表示します。

Q:特定のセル範囲だけを印刷するには?

A:特定のセル範囲だけを印刷するには、Rangeオブジェクトを使用します。例:Worksheets("Sheet1").Range("A1:C10").PrintOut。このコードは、”Sheet1″のA1からC10までのセル範囲を印刷します。

Q:PrintOutメソッドでエラーが出る場合の対処法は?

A:PrintOutメソッドでエラーが出る場合、まずはエラーメッセージを確認してください。エラーメッセージによっては、印刷設定やプリンターの状態、VBAコードの問題など、原因がヒントとして示されることがあります。

Q:PrintOutメソッドで印刷したデータをPDFに保存することはできますか?

A:はい、PrintOutメソッドではなく、ExportAsFixedFormatメソッドを使用して、印刷データをPDFとして保存することができます。

Q:PrintOutメソッドでの印刷設定は永続的に保存されますか?

A:いいえ、PrintOutメソッドでの印刷設定は一時的なものです。Excelファイルを閉じて再度開いた場合、設定はリセットされます。

関連動画

まとめ

この記事で、Excel VBAのPrintOutメソッドの基本的な使い方から応用例、多くの実用的なサンプルコードについて解説しました。これで、Excel VBAを用いた印刷がよりスムーズに、より柔軟に行えるようになったはずです。何か疑問や不明点があれば、どうぞお気軽に質問してください。

Excelのショートカットキーの練習

当サイトはショートカットキーの練習を実際の動きを確認しながら練習できる機能がついています。繰り返し指を動かして練習ができるので、ゲーム感覚で遊んでいくうちに自然とショートカットキーが使えるようになれます。ショートカットキーは暗記するよりも実際に手を動かして練習していったほうが習得が早くなるので、是非当サイトをブックマークに登録し定期的に練習してみてください。下記のSTARTキーを押下すると練習を始められます。

下のスタートボタンを押して練習モードに入ります。
STARTSTOP
※入力モード切り替え ctrl + shift + alt + space
PRE
NEXT
現在の問題をリストから除外
除外したリストをリセット
現在の除外状況のURL取得
コピー
ガイドモード
リピートモード

※推奨ブラウザ Google Chrome

PUSH ENTER
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次