Where Business Meets Perfection.
Follow Solfecta! Like Solfecta on Facebook! Follow Solfecta on Twitter! Follow Solfecta on LinkedIn! Follow Solfecta on Google+!

Print em’ all

Frequently when using Microsoft Word I find myself working on a number of related documents at the same time (keeping them all open to be able to cut/paste between them).   Once finished, I often want to print all of them.  Unfortunately, there is no “print all” function in Word.  The functionality needed to do this is, however, easily made available by writing a simple little Word Macro and then attaching it to the Ribbon (I am a Word 2007 user).   Get started by going to the “Developer” tab and selecting “Visual Basic”.  Once in the Visual Basic editor, you can add a new procedure (insert procedure, sub) and add the following code:

Sub Print_All()

With Dialogs(wdDialogFilePrintSetup)
        .Printer = “KONICA MINOLTA 350/250/200 PS”
        .DoNotSetAsSysDefault = True
        .Execute
    End With
   
 For Each Doc In Documents
        Doc.PrintOut
    Next Doc

End Sub

I named my subprocedure “Print_all”, which is what appears on line 1.  The first part of the code sets the printer.  You can omit this loop (the “with” through “end with”) if you wish to simply use the default printer.  If you want to set a printer to use (as I have done), simply substitute the name of your printer in the “.printer” line above;  it is the name which appears in the printer dialog screen in Windows. I would suggest adding the “.DoNotSetAsSysDefault” line as well, as Word, by default, has a nasty habit of changing the WINDOWS default printer if you don’t.    When finished, you can add the macro to the ribbon, and walla, it will print all open documents, either to the default printer, or to the printer you have selected as part of the macro. 

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+

Leave a Reply