Posted to microsoft.public.excel,microsoft.public.excel.programming,microsoft.public.excel.worksheet.functions
|
|
conditional printing? macro?
How about instead of ActiveSheet.PrintOut set up a way to get the range for
the area to print and return it in a MsgBox?
or DeBug Print? or....
--
steveb
(Remove 'NOSPAM' from email address if replying direct)
"Ron de Bruin" wrote in message
...
Printpreview will not work with From:=1, To:=1
You must print
--
Regards Ron de Bruin
http://www.rondebruin.nl
"Steven" wrote in message
...
Thanks Ron,
how could i test this without printing? if possible?
Steve
"Ron de Bruin" wrote in message
...
Hi Steven
Try this
Sub test()
If Range("total1") 0 Then ActiveSheet.PrintOut From:=1, To:=1
If Range("total2") 0 Then ActiveSheet.PrintOut From:=2, To:=2
If Range("total3") 0 Then ActiveSheet.PrintOut From:=3, To:=3
If Range("total4") 0 Then ActiveSheet.PrintOut From:=4, To:=4
End Sub
--
Regards Ron de Bruin
http://www.rondebruin.nl
"Steven" wrote in message
news:kELoc.118$6X5.92@newsfe1-win...
here's my situation, i have a workbook with many sheets in it, each
sheet if
the default print shortcut button was used would print to 4 pages of
A4
paper.
the data on these sheets varies everyday, someday's only 1 page per
sheet
would be full of data others 2, 3, or 4 etc. how could i write a
macro
that
would be able to print only the needed pages?, each page, if it
contains
any
data would have a value in a totals cell.
so i would need code along these lines
Sheets("sheet1").Select
IF(OR(total1="",total1=0),"don't print","don't print") ELSE set
data1 =
TRUE
IF(OR(total2="",total2=0),"don't print","don't print") ELSE set
data2 =
TRUE
IF(OR(total3="",total3=0),"don't print","don't print") ELSE set
data3 =
TRUE
IF(OR(total4="",total4=0),"don't print","don't print") ELSE set
data4 =
TRUE
IF(OR(data1 ="TRUE",data1="FALSE"),"Print Page 1 to 1", "don't
print")
IF(OR(data1 ="TRUE",data1="FALSE"),"Print Page 1 to 2", "don't
print")
IF(OR(data1 ="TRUE",data1="FALSE"),"Print Page 1 to 3", "don't
print")
IF(OR(data1 ="TRUE",data1="FALSE"),"Print Page 1 to 4", "don't
print")
Hope this helps to explain what im trying to do, and someone is able
to
code
something that would work.
Many thanks,
Steve
|