マクロ内のプリンターを一時的に変更する(Microsoft Word)
Shauneは、PDFライターに製品情報シートを印刷するマクロを作成しました。彼がPDFライターに印刷するとき、マクロはそれが実行されているシステムのデフォルトプリンターをリセットするので、誰かが定期的に印刷しようとすると(マクロが終了した後)、WordはユーザーがPDFライター。 Shauneは、デフォルトのプリンターをリセットせずに、マクロでPDFライターを一時的に使用する方法を探しています。
悪いニュース、ショーンは、プリンタのリセットを回避できないことです。 ActivePrinterプロパティをリセットすると、Wordは、特にリセットするまで、指定したプリンターがアクティブな(デフォルトの)プリンターのままであると見なします。
幸いなことに、ActivePrinterプロパティを読み取ることもできます。つまり、マクロを実行する前にユーザーが選択したプリンタをマクロに保存し、終了する前にActivePrinterプロパティをリセットできます。その結果、マクロが設定を検知して元に戻したため、ユーザーはデフォルトのプリンターが変更されたことに気付くことはありません。この手法は次のように使用されます:
Sub PrinterTechnique() Dim sCurrentPrinter as String Dim sPDFwriter as String ' perform whatever tasks need to be done prior to printing ' make sure you also initialize the sPDFwriter string with ' the name of your PDF writer ' save current printer name, then change to PDF writer sCurrentPrinter = Application.ActivePrinter Application.ActivePrinter = sPDFwriter ' print document, then go back to the original printer ActiveDocument.PrintOut Application.ActivePrinter = sCurrentPrinter ' continue with the rest of your macro End Sub
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(318)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ:
linkマクロ内のプリンターを一時的に変更する。