bottom
Great WordTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > WordTips Home > Printing > Defining Default Printers on a Document Level

Defining Default Printers on a Document Level

Summary: Word doesn’t allow you to specify a default printer on a document-by-document basis. This tip covers a couple of ways you can work around this limitation. (This tip works with Microsoft Word 97, Word 2000, Word 2002, Word 2003, and Word 2007.)

Some programs remember, on a document-by-document basis, what printer you last used when working with that document. For instance, InDesign and QuarkXPress remember what printer was used to print any given document; if you switch from one document to another, the printer designated to print that document will also change.

Word, unfortunately, does not have such a capability. Instead, Word keeps track of printers on a session-by-session basis. In other words, when you start Word, it starts by assuming you want to print to your default Windows printer. If you later change to a different printer, that printer remains selected until you specifically make changes. When you quit your Word session and restart later, the selected printer again reverts to the default printer.

There are several ways you could work around this shortcoming. One is to define different custom printer buttons (one for each of your printers) and then simply use those to print different documents, as desired. If you want Word to do the remembering of which printer was used, then your only option is to create a macro that would do this for you. This approach, however, is not a trivial one. For this reason, the balance of this tip will discuss only the generalities of writing such a macro instead of presenting the actual macro code.

A simple way to implement such a macro system would be to define a special custom document property, and then use the contents of that property to store the name of the printer last used for the document. The document property could be set using the AutoClose macro, which is called whenever you close a document.

Once the custom document property is set, a macro can read the value and reset the printer whenever you are ready to print. If the document property is not set, or if it is set to a printer that is not available, then it could simply use the default Windows printer.

The trick in all this, of course, is to determine when the macro that does the printer switching should be executed. It could be placed in one of the Auto macros (such as AutoOpen), but that would not completely solve the problem. For instance, if you open two documents at the same time, the printer would remain set to the printer specified in the last document you opened.

A more useful solution may be to simply use macros to redefine the print command used within Word. When you chose to print your document, the macro would present the standard Print dialog box, but the selected printer would be changed to whatever printer is stored in the custom document property. The drawback to this approach is the same as the initial strength—that the printer isn't changed until actually printing. Word relies upon the selected printer driver to control its WYSIWYG display. In other words, the printer driver selected controls how information is displayed on the screen. If the printer driver changes just before printing, then what is printed may not match what is displayed on the screen.

The best solution would be to tie the printer-setting macro to an event that fired whenever a document attained focus (when the document was selected). Unfortunately, there is no such even available for document objects in VBA. (Which is very curious since there is such an object in Excel's implementation of VBA.)

The upshot of all this is that a complete solution will necessitate the changing of several different built-in Word commands. Which commands? It really depends on how you use Word. For instance, if you normally look at Print Preview before printing, then you will want to change the Print Preview command so that it changes the printer driver. Do you choose the Print command directly from the Print Preview screen? If so, then you will need to make changes to that command.

Tip #1551 applies to Microsoft Word versions: 97 | 2000 | 2002 | 2003 | 2007


Ultimate Library! An amazing resource that brings together, in one place, the collected knowledge of everything ever published in WordTips. The library combines two powerful elements to make you more productive: solutions and convenience. Here's where you get your own copy of everything ever published in WordTips.
 
Check out WordTips Ten-Year Library today!

Helpful Links

Ask a Word Question
Make a Comment

Tips.Net Home

WordTips FAQ
WordTips Premium

Learn Access Now

Bugs and Pests Tips
ExcelTips
Family Tips
Health Tips
Home Tips
Organizing Tips
WordTips

Advertise on the
WordTips Site

 

Great Info!

Get tips like this every week in WordTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)