Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
I'm trying to set the print range of a report. The code I'm using is a follows Dim Print_Range As Range Print_Range = Range("A1:E1", Selection.End(xlDown)).Select ActiveSheet.PageSetup.PrintArea = Print_Range End Sub This isn't working though with a Run-time error 91, Object Variable or With block variable not set. Any ideas Paul |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Paul
When you assign a range, you have to use the Set keyword and don't use the Select method Set Print_Range = Range("A1:E1", etc... The PrintArea property of the PageSetup object takes a string, not a range, so that would look like ActiveSheet.PageSetup.PrintArea = Print_Range.Address See here http://www.dicks-blog.com/excel/2004...g_the_pri.html I would do it like this Dim Print_Range As Range With ActiveSheet Set Print_Range = .Range("A1", .Range("A1").End(xlDown).Offset(0,4)) .PageSetup.PrintArea = Print_Range.Address End With -- Dick Kusleika MVP - Excel Excel Blog - Daily Dose of Excel www.dicks-blog.com "PC" <paulm DOT c at iol DOT ie wrote in message ... Hi, I'm trying to set the print range of a report. The code I'm using is a follows Dim Print_Range As Range Print_Range = Range("A1:E1", Selection.End(xlDown)).Select ActiveSheet.PageSetup.PrintArea = Print_Range End Sub This isn't working though with a Run-time error 91, Object Variable or With block variable not set. Any ideas Paul |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks Dick, Much appreciated
"Dick Kusleika" wrote in message ... Paul When you assign a range, you have to use the Set keyword and don't use the Select method Set Print_Range = Range("A1:E1", etc... The PrintArea property of the PageSetup object takes a string, not a range, so that would look like ActiveSheet.PageSetup.PrintArea = Print_Range.Address See here http://www.dicks-blog.com/excel/2004...g_the_pri.html I would do it like this Dim Print_Range As Range With ActiveSheet Set Print_Range = .Range("A1", .Range("A1").End(xlDown).Offset(0,4)) .PageSetup.PrintArea = Print_Range.Address End With -- Dick Kusleika MVP - Excel Excel Blog - Daily Dose of Excel www.dicks-blog.com "PC" <paulm DOT c at iol DOT ie wrote in message ... Hi, I'm trying to set the print range of a report. The code I'm using is a follows Dim Print_Range As Range Print_Range = Range("A1:E1", Selection.End(xlDown)).Select ActiveSheet.PageSetup.PrintArea = Print_Range End Sub This isn't working though with a Run-time error 91, Object Variable or With block variable not set. Any ideas Paul |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
print range won't print | Excel Discussion (Misc queries) | |||
Print range | Setting up and Configuration of Excel | |||
Print Blank Pgs - Preview margins outside print range | Excel Discussion (Misc queries) | |||
Excel 2000 VBA - Set Print Range in dynamic range | Excel Programming | |||
Print Range | Excel Programming |