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 SubNOTE: 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. |