
Tips.Net > WordTips Home > Printing > Remembering Copies to Print
Summary: If you routinely need to print more than one copy of a document, you’ll love the ideas presented in this tip. There’s even a way that you can make individual documents “remember” how many copies should be printed. (This tip works with Microsoft Word 97, Word 2000, Word 2002, Word 2003, and Word 2007.)
When you click on the Print tool, Word automatically prints a single copy of your document. It does this regardless of the number of copies you previously chose to print in the Print dialog box. This isn't some funny behavior unique to the Print tool. Indeed, each time you redisplay the Print dialog box you should notice that the Number of Copies setting is always reset to 1.
Word always seems to suffer from short-term memory loss in this area; the Number of Copies setting is simply not "persistent," and must be set each time you want to print. This can be bothersome, particularly if you want to print the same number of copies on a consistent basis.
There are two ways that a solution can be approached. First, you can create a macro that prints, using the currently selected printer, a specific number of copies. This is a great approach if you find yourself consistently printing a certain number of copies. The following macro, for example, will print four copies of the current document:
Sub PrintFour()
ActiveDocument.PrintOut Copies:=4
End Sub
If you assign this macro to a new toolbar button, the Quick Access toolbar (in Word 2007), or to a shortcut key, then a simple click or key combination will print the desired number of copies.
The second solution is more involved, but may be more flexible in the long run. This solution involves the use of a custom document property to maintain, on a document-by-document basis, the number of copies last printed. This setting is used as the number of copies to print, thereby providing a persistent number of copies for each document. The following two macros should be used:
Public Sub FilePrint()
Dim bExists As Boolean
Dim MyPrint As Dialog
' ensure our doc variable exists
bExists = False
For Each varItem In ActiveDocument.CustomDocumentProperties
If varItem.Name = "Copies" Then
bExists = True
Exit For
End If
Next varItem
' initialize document variable if doesn't exist
If Not bExists Then
ActiveDocument.CustomDocumentProperties.Add _
Name:="Copies", LinkToContent:=False, _
Type:=msoPropertyTypeNumber, Value:=1
End If
Set MyPrint = Dialogs(wdDialogFilePrint)
With MyPrint
.NumCopies = ActiveDocument.CustomDocumentProperties("Copies")
.Show
End With
ActiveDocument.CustomDocumentProperties("Copies") = _
MyPrint.NumCopies
Set MyPrint = Nothing
End Sub
Public Sub FilePrintDefault()
Dim bExists As Boolean
' ensure our doc variable exists
bExists = False
For Each varItem In ActiveDocument.CustomDocumentProperties
If varItem.Name = "Copies" Then
bExists = True
Exit For
End If
Next varItem
' initialize document variable if doesn't exist
If Not bExists Then
ActiveDocument.CustomDocumentProperties.Add _
Name:="Copies", LinkToContent:=False, _
Type:=msoPropertyTypeNumber, Value:=1
End If
ActiveDocument.PrintOut Copies:= _
CInt(ActiveDocument.CustomDocumentProperties("Copies"))
End Sub
These macros have special names, FilePrint and FilePrintDefault. These are the names assigned to the internal Word commands that display the Print dialog box (FilePrint) and print the active document (FilePrintDefault) through the use of the Print tool on the toolbar. When you use these macros, with the names shown, you essentially replace the internal Word commands.
In the case of the new FilePrint macro, the document properties are checked to see if there is one named Copies. If there is not, then a document property by that name is created and set to the value of 1. Then, the Print dialog box is displayed and the Number of Copies value is set based on the custom document property. You, as a user, can then change the Number of Copies setting, as desired. When the dialog box is closed (either by printing or not), the Copies document property is updated to whatever the Number of Copies setting was.
The FilePrintDefault macro, on the other hand, only checks to ensure that the Copies document property exists and sets the number of copies to print based on its value. If the property does not exist, then it is created and set to a value of 1.
Tip #1313 applies to Microsoft Word versions: 97 2000 2002 2003 2007
Take Control! Experienced users know that styles can make the difference between a plain document and a masterful one. This is the real power behind Word, and the key to that power can be found in WordTips: Styles and Templates.
It doesn't matter if you are a beginner or expert, the WordTips archives are the fastest way to improved productivity. (more information...)
Ask a Word Question
Make a Comment
Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Pet Tips
Word2007 Tips
WordTips