VBA|PrintOutを使って両面印刷をする方法

エクセルVBA VBAでウインドウ関連の操作



エクセルを印刷する際に、PrintOutメソッドを使って印刷する機会は多いと思います。

一方で、PrintOutを使って両面印刷をする方法がわからないという相談もよく届きます。

今回はPrintOutメソッドを使って両面印刷をする方法について徹底的に説明していきます。



PrintOutを使って両面印刷をする方法

VBAでは両面印刷を設定することができない

PrintOutメソッドでは、使用するプリンタや印刷部数を設定することができますが、残念ながら「両面印刷」を設定することができません。

「両面印刷」は、プリンタ自体の設定項目であるため、VBAで「両面印刷」を設定することができないのです。

ですが、当サイトはそれだけでは終わらず、なんとか両面印刷をすべくいろいろとアイディアを掲載しましたのでご覧ください。

プリンタの設定画面をマクロで開く

両面印刷を簡単に設定することができるように、プリンタの設定ダイアログを自動的に開くマクロを紹介します。

サンプルコード:

Sub プリンタ設定画面表示()
    Application.Dialogs(xlDialogPrinterSetup).Show
End Sub

実行すると、以下のように「プリンタの設定」ダイアログが開きますので、使用するプリンタを選択します。このとき、「現在使用しているプリンタ」にカーソルが合っている状態になるので、「Alt + S」で設定メニューを開くことができます。

出典: https://tripbowl.com/excel-vba/dialogprintersetup/

プリンタの設定メニュー画面で両面印刷を選択します。

出典: https://tripbowl.com/excel-vba/dialogprintersetup/

上記のコードをPrintOutメソッドを使用する前に記述し、両面印刷を設定します。

マクロを実行して「Alt + S」を押すだけでプリンタの設定メニューを開くことができるので、両面印刷をするまでの工程をかなり短縮することができるはずです。

あらかじめ手動で両面設定を保存しておく

常に同じプリンタで、常に両面印刷するのであれば、あらかじめ以下の設定を手動で行って保存しておくことで、PrintOutメソッドを使用して両面印刷をすることができます。

1.エクセルの上部メニューの「ページレイアウト」から「ページ設定」(右下の矢印マーク)をクリックする。

2.ページ設定ダイアログが開くので、右下の「オプション」を選択する。

3.「両面印刷」を選択し、OKをクリックして設定を保存する。

なお、この設定は、違うプリンタに変更して[保存]処理しなければ両面印刷の設定は保持されます。

【まとめ】PrintOutを使って両面印刷をする方法

今回はPrintOutメソッドを使用して両面印刷をする方法について解説しました。

「両面印刷」は、プリンタ自体の設定項目であるため、VBAで「両面印刷」を設定することができませんが、両面印刷を効率的に設定する方法として、

  • プリンタの設定画面をマクロで開く
  • あらかじめ手動で両面設定を保存しておく

という方法を紹介しました。

PrintOutメソッドはエクセルでは非常によく使うメソッドですので、今回の方法をぜひ役立ててくださいね。

参考:Excel VBA入門 その61:PrintOut時にエラーが発生するときの対処方法

コメント

  1. […] 参考:Excel VBA入門 その62:PrintOutを使って両面印刷をする方法 […]

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