Шон написал макрос, который распечатывает в PDF-формате информационные листы о продукте. Когда он печатает на устройстве записи PDF, макрос сбрасывает принтер по умолчанию для системы, в которой он работает, так что, когда кто-то затем пытается печатать регулярно (после завершения макроса), Word все еще предполагает, что пользователь хочет печатать Писатель PDF. Шон ищет способ для своего макроса временно использовать средство записи 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), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (318) применим к Microsoft Word 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Word (Word 2007 и позже) здесь:

link: / wordribbon-Tempoporary_Changing_the_Printer_in_a_Macro [Временная смена принтера в макросе].