ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Can a macro do this job? (https://www.excelbanter.com/excel-programming/428879-can-macro-do-job.html)

tkraju via OfficeKB.com

Can a macro do this job?
 
I have a range a1:c20 ,the values of this range are based on datavalidation
list in a1.
select first value from datavalidation list ,display and print values of
range a1:c20(first page),then select second value from the datavalidation
list,display and print values of range a1:c20(second page) ,loop and do the
job until the end of datavalidaton list.
Can a macro do this job?

--
Message posted via http://www.officekb.com


Dave Peterson

Can a macro do this job?
 
Option Explicit
Sub Testme()

Dim myValidRng as range
dim myCell as range


'change this to point to the range that holds the list that's used
'for validation
set myValidRng = worksheets("Sheet9999").range("myList")

with worksheets("Sheet1")
for each mycell in myValidRng.cells
.range("a1").value = mycell.value
.calculate 'just in case
.printout preview:=true
next mycell
end with
end sub

If you only wanted to print A1:C20:
.range("a1:c20").printout


(Untested, uncompiled. Watch out for typos.)


"tkraju via OfficeKB.com" wrote:

I have a range a1:c20 ,the values of this range are based on datavalidation
list in a1.
select first value from datavalidation list ,display and print values of
range a1:c20(first page),then select second value from the datavalidation
list,display and print values of range a1:c20(second page) ,loop and do the
job until the end of datavalidaton list.
Can a macro do this job?

--
Message posted via http://www.officekb.com


--

Dave Peterson

tkraju via OfficeKB.com

Can a macro do this job?
 
Thank you Dave,Its fantastic.

Dave Peterson wrote:
Option Explicit
Sub Testme()

Dim myValidRng as range
dim myCell as range

'change this to point to the range that holds the list that's used
'for validation
set myValidRng = worksheets("Sheet9999").range("myList")

with worksheets("Sheet1")
for each mycell in myValidRng.cells
.range("a1").value = mycell.value
.calculate 'just in case
.printout preview:=true
next mycell
end with
end sub

If you only wanted to print A1:C20:
.range("a1:c20").printout

(Untested, uncompiled. Watch out for typos.)


I have a range a1:c20 ,the values of this range are based on datavalidation
list in a1.

[quoted text clipped - 6 lines]
--
Message posted via http://www.officekb.com



--
Message posted via OfficeKB.com
http://www.officekb.com/Uwe/Forums.a...mming/200905/1



All times are GMT +1. The time now is 03:54 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com