• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでプリンタを変えたい。)

VBAでプリンタを変える方法

このQ&Aのポイント
  • WindowsXPでOffice2003を使用している場合、VBAを使用してプリンタを変更する方法について教えてください。
  • EXCEL VBAを使用して、プリントアウトや印刷に関連する作業を行っています。最初は「Application.ActivePrinter = (プリンタ名) on NeXX:」としていましたが、不都合があるため「Printout」メソッドを使用するようにしました。しかし、通常使うプリンタに戻す方法がわからないので、教えてください。
  • 質問がわかりづらくて申し訳ありません。WindowsXPでOffice2003を使用している場合、EXCEL VBAを使用してプリンタを変更した後、通常のプリンタに戻す方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

Printoutの前に String変数にActivePrinterの値を代入しておき、印字後にその変数の値でActivePrinterを再設定しては? Sub Sample()  Dim sPrinter As String  sPrinter = Application.ActivePrinter '←ActivePrinter情報を変数に  '印字処理(適当)  ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _   "CutePDF Writer on CPW2:", Collate:=True  Application.ActivePrinter = sPrinter '←ActivePrinterを設定 End Sub

toshima
質問者

お礼

早速の回答有難うございます。 変数を宣言し、そこにプリンタ名を代入するという手があるのですね。 参考になります。