「なでしこジャパン」おめでとう!ありがとう!
興奮がやみませんね。
で、いきなり昨日の印刷設定です(笑)。
「Wordの印刷設定でコストダウン(1)
」と「Wordの印刷設定でコストダウン(2)
」の流れで、またまたコストダウンに関するマクロです。
▼開発の背景
ある事業所では、プリンターの印刷を計数して、月間の印刷枚数をプリンターのメンテ会社に報告をしています。「カウンター料金」などと呼ばれる従量料金制度です。
そこで、この事業所のリーダーの方は考えました。
「A4の原稿をA3用紙に2ページ分印刷すれば、印刷枚数が半分になる!」
ちょっとしたコストダウンですね(笑)。印刷枚数が多ければ多いほど差が出てきます。
これ、実際にお話しをうかがった話ですから、このブログ読者の方々にもお役に立つかもしれません。
そんなわけで、今回紹介するマクロは、「A4原稿をA3用紙に2ページ分印刷するマクロ」です。
▼考え方
Wordの印刷設定でコストダウン(2)
で紹介したとおり、ドライバーに印刷のレイアウト設定ができるのですが、今回は、ドライバーを操作するのではなく、Wordの機能を使って、「A4原稿をA3用紙に2ページ分印刷」を実現したいと思います。
操作は以下の通りです。
(1)「印刷」ダイアログボックスでA3用紙のあるプリンタードライバを選択して、印刷時の1枚当たりのページ数を設定します。
(Word 2003の例 2ページを選択)
(Word 2010の例。2ページ/枚を選択)
(2)「ページ設定」ダイアログボックスで、A3用紙が入っている用紙トレイを、1ページ目および2ページ目以降で選択します。
(手差しにA3用紙がある場合)
これをマクロで自動化します。
▼準備
日経パソコンの記事「複雑な印刷設定もワンクリックで
」で紹介したマクロを使って、プリンター名と用紙トレイの番号を取得します。
▼マクロ
Sub A4原稿をA3用紙に2ページ分印刷()
Dim myFirstTray As String
Dim myOtherTray As String
Dim myPrinter As String
With ActiveDocument.PageSetup
myFirstTray = .FirstPageTray
myOtherTray = .OtherPagesTray
myPrinter = ActivePrinter
ActivePrinter = "プリンター名"
.FirstPageTray = トレイ番号
.OtherPagesTray = トレイ番号
ActiveDocument.PrintOut PrintZoomColumn:=2, PrintZoomRow:=1
ActivePrinter = myPrinter
.FirstPageTray = myFirstTray
.OtherPagesTray = myOtherTray
End With
End Sub
▼関連記事
日経パソコンの連載記事の解説
日経パソコン 連載第4回目 「複雑な印刷設定もワンクリックで」