Print number of copies box

E

EMoe

Hello Programmers!

I have this code to print a portion of a worksheet.

Sub PrintLogsheet()
'
Application.ScreenUpdating = False
Range("A1:M37").Select
Selection.PrintOut Copies:=1, Collate:=True
Range("A1").Select
Application.ScreenUpdating = True
End Sub

How do I insert code, that when I click the macro button, a box pops up
asking how many copies to print? After entering the required amount,
click OK, then the code continues out to print the copies.

Thanks,
EMoe
 
D

Duncan

Hello,

The following is some code that i put together to print out copies of a
merge after running a find to show the right one. maybe if you altered
this a bit you get it to do what you want? not sure mind, might be a
better way. (P.s im probly gonna get a caning for using the GoTo
command but then im not really much of a developer just a simple
bloke!) (P.s it loops until you press cancel)



ln18:
Documents("Test Merge TP1.doc").Activate
WordBasic.mailmergefindentry
Documents("Test Merge TP1.doc").Activate

' this lot is a message box to print it or not
Dim prompt, title, response
Dim style As Integer
prompt = "Would you like to print this TP1?
Yes = Print, No = Search again, Cancel = Close"
style = vbYesNoCancel + vbQuestion
title = "Print?"
response = MsgBox(prompt, style, title)
If response = vbYes Then
ActiveDocument.PrintOut
GoTo ln18
Else
If response = vbNo Then
GoTo ln18
Else
If response = vbCancel Then
ActiveDocument.Protect
wdAllowOnlyFormFields, no, ""
Documents("Test Merge TP1.doc").Close (no)
Documents("Print.doc").Activate

End If

End If

End If
 
T

Tom Ogilvy

Sub PrintLogsheet()
Dim num as String
num = InputBox("enter number of copies")
if num = "" then
num = 1
elseif not isnumeric(num) then
num = 1
end if
Application.ScreenUpdating = False
Range("A1:M37").Select
Selection.PrintOut Copies:=clng(num), Collate:=True
Range("A1").Select
Application.ScreenUpdating = True
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top