WD: Printing Multiple Pages with Single-Sheet Feed to Dot MatrixLast reviewed: February 5, 1998Article ID: Q81084 |
The information in this article applies to:
SYMPTOMSWhen you print a multiple-page document to a dot-matrix printer using a single-sheet feed, Windows Print Manager stalls the print job after each page.
CAUSEPrint Manager receives a "Paper Out" message from the printer that causes it to stall.
WORKAROUNDYou can use the macros below in Word for Windows to pause the print job between each page so you can add paper. The following macros prompt you for the number of pages you want to print. Then they determine the number of pages in your document and display the following message:
Ready to print page X. Press OK when the paper is loaded?Choose the OK button to print the listed page or choose the Cancel button to terminate the print job. WARNING: ANY USE BY YOU OF THE CODE PROVIDED IN THIS ARTICLE IS AT YOUR OWN RISK. Microsoft provides this macro code "as is" without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.
Macro for Word for Windows Version 6.0
Sub MAIN
StartOfDocument
FileSummaryInfo .Update
Dim dlg As DocumentStatistics
GetCurValues dlg
Pages = Val(dlg.Pages)
ncopies = 0
On Error Resume Next
ncopies = Val(InputBox$("Print how many copies of each page?"))
If Not Err Then
Err = 0
For x = 1 To Pages
For i = 1 To nCopies
msg$ = "Ready to print copy" + Str$(i)
msg$ = msg$ + " of page" + Str$(x) + ". "
msg$ = msg$ + "Press OK when the paper is loaded."
If MsgBox(msg$, 1) Then
FilePrint .Range = 3, .From = Str$(x), .To = Str$(x)
Else
i = nCopies
x = Pages
End If
Next
Next
End If
End Sub
Macro for Word for Windows Version 2.0
Sub Main
StartOfDocument
fView = ViewFieldCodes()
If fView <> 0 Then ViewFieldCodes
InsertField "numpages"
CharLeft 1, 1
UpdateFields
Pages = Val(Selection$())
EditClear
ncopies = 0
On Error Resume Next
ncopies = Val(InputBox$("Print how many copies of each page?"))
If Not Err then
Err = 0
For x = 1 To Pages
For I = 1 to nCopies
If MsgBox("Ready to print copy" + Str$(i) + " of page" + Str$(x) \
+ ". " + "Press OK when the paper is loaded?", 1) Then
FilePrint .Range = 3, .From = Str$(x), .To = Str$(x)
Else
i = nCopies
x = Pages
End If
Next
Next
End If
If fView <> 0 Then ViewFieldCodes
End Sub
Macro for Word for Windows Versions 1.x
Sub MAIN
StartOfDocument
Dim dlg As ViewPreferences
GetCurValues dlg
prefer = dlg.ShowAll
If prefer <> 0 Then dlg.ShowAll = 0
ViewPreferences .ShowAll = dlg.ShowAll
fview = ViewFieldCodes()
If fview <> 0 Then ViewFieldCodes
InsertField "numpages"
CharLeft 1, 1
UpdateFields
pages = Val(Selection$())
EditClear
ncopies = 0
On Error Resume Next
ncopies = Val(InputBox$("Print how many copies of each page?"))
If Not Err Then
Err = 0
For x = 1 To pages
For I = 1 to nCopies
If MsgBox("Ready to print copy" + Str$(i) + " of page" + Str$(x) \
+ ". " + "Press OK when the paper is loaded?", 1) Then
FilePrint .Range = 2, .From = Str$(x), .To = Str$(x)
Else
I = nCopies
x = Pages
End If
Next
Next
End If
If fview <> 0 Then ViewFieldCodes
If prefer <> 0 Then dlg.ShowAll = 1
ViewPreferences .ShowAll = dlg.ShowAll
End Sub
NOTE: You can run this macro instead of the default FilePrint macro to
print multiple pages using single-sheet feed.
STATUSMicrosoft has confirmed this to be a problem in the versions of Word listed At the beginning of this article. This problem was corrected in Word version 7.0 for Windows 95.
REFERENCES"Microsoft Word for Windows and OS/2 Technical Reference," pages 63, 66, 203, 280, 283 "Using WordBasic," by WexTech Systems and Microsoft, pages 45- 49, 226, 234
|
Additional query words: 1.x 2.x winword2 word6 winword dmp offline ready
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |