Need help with a Word 2003 Macro

I have two printers one an Ink Jet is used for most printing. The other printer I only use for printing Envelopes. I need a macro that will switch printers for me so I don’t have to go through the file print menu juts to print the rare envelope.

I’m not sure that you need a macro.

I’m betting you have the default Print button on your toolbar. This just sends the document to the default printer without opening the Print dialog box so you can make changes. You want the button that opens the dialog box, and then you’ll have just one extra click.

Tools > Customize >Commands tab
Go up to the toolbar and drag the Print button off the toolbar to remove it
In the left pane, click File (should already be selected)
In the right pane, scroll down to “Print . . .” (the ellipsis is important! You don’t want the plain “Print” one)
Drag the “Print . . .” button up to the toolbar
Close the Customize dialog

Now when you click the Print button, the Print dialog opens and you can select your printer with one click. (I switch between my B&W laser and color inkjet all the time using this method.) You can also select which pages to print; I choose “current page” to print an envelope that’s attached to the document, and specify pages 2-whatever to print the rest of it.

I’m sure you’ll let me know if I’ve misinterpreted teh situation or your needs.

In order to print an envelope I have to go to

Tools > Letters & Mailing > Envelopes And Labels.

After entering the too address I hit print and it does not give a dialog box just prints to the default printer so I need a simple way to switch the printer before hand without going through all the dialog menus

Have you tried the method I described to change your print button so it will display the dialog for you? It will take about 30 seconds max. Once you do that, the process of changing printers will be extremely simple. Then your method for printing an envelope will be:

Tools > Letters and Mailings > Envelopes and Labels
Enter envelope info
Print > choose printer from drop-down list > OK (assuming your envelope is in a document by itself)

The next time you print, you may have to choose the default printer again, but then it will “stick” until the next time you print an envelope.

In any case, it’s nice to have the print dialog every time so you can make changes to the print job before printing.

Yes I tried your suggestion but when I choose print from Envelopes and Labels it doesn’t give me a dialog box, it just shoots the document to the default printer

Oh weird . . . apparently I haven’t yet created an envelope from scratch in Word 2003, but just printed them from existing documents. Mea culpa.

<scrabbles off to play with the feature a bit>

Are you creating the envelopes as stand-alone items, or are they associated with a document? If the latter, you can attach the envelope to the doc by clicking Add to Document in the Envelopes dialog, which closes it, and then you can print as usual. If it’s a stand-alone envelope, just open a new document first and attach the envelope to that (and be sure to print only the first page – the envelope).

How would that work for you?

Hmm, from here (an Excel page, but I think I see a possible modification):

Sub PrintToAnotherPrinter()
Dim STDprinter As String
STDprinter = Application.ActivePrinter
Application.ActivePrinter = “microsoft fax on fax:”
’ change printer
ActiveSheet.PrintOut
’ prints the active sheet
Application.ActivePrinter = STDprinter
’ change back to standard printer
End Sub

Obviously (or perhaps not), in Word you would substitute “ActiveDocument” for “ActiveSheet”. You’d still have to have your envelope as part of an open document, as described in my previous post. Assign this macro to a menu or hotkey and you’re golden. Sorry, but I’ve spent more time already tonight than I should have on this, so don’t have time to test the theory.

I’m assuming that because you asked for a macro, you know how to install and run them; if not, check Help or give a shout. But if so, this should be an easy test. HTH. I’m back to work.

I’m highlighting the address on the letter and when I choose print envelope it is putting it in the to box. I think I’m just going to buy a new printer that has a dedicated tray for envelops like my old printer did and it will use the correct tray when I go to print.

OK, so then you don’t have to go to the trouble of creating a separate document (IOW, you’re doing it the same way I do it; I almost never create an envelope without a matching document). So if you add the envelope to the document by clicking that button, and use the “Print . . .” dialog box, you can just print the single “page” of the envelope in the printer of your choosing.

However, if you can afford the expense of buying a whole new printer to save yourself a few clicks, more power to you (sincerely meant; no snark intended). Sometimes I wish I had a two-tray printer so I could keep new paper in one and scrap in the other; but them’s the breaks, my current printer works just fine, and I can’t justify the cost, so I just swap out the tray when I need to.