Shaune编写了一个宏,该宏可以将产品信息表打印到PDF编写器中。当他打印到PDF编写器时,宏将为其运行的系统重置默认打印机,以便当某人随后尝试定期打印(在宏完成后)时,Word仍假定用户要打印到该打印机。 PDF编写器。 Shaune正在为其宏寻找一种在不重置默认打印机的情况下临时使用PDF writer的方法。

坏消息是Shaune,这是您无法解决重置打印机的问题。当您重置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_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)此技巧(318)适用于Microsoft Word 97、2000、2002和2003。您可以为Word(Word 2007)的功能区界面找到此技巧的版本。和更高版本)在这里: