ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Print area (https://www.excelbanter.com/excel-programming/354120-print-area.html)

grahammal[_17_]

Print area
 

If I wanted to set the print area to just print
Sheets("Sheet1").Range("A1":"E9")
rather than the whole sheet, how do I do this from a macro button. I
know that
ActiveSheet.Printout prints the whole sheet, but I need to set the
print area 1st.
The print area will be variable depending on what I decide to import
into the active sheet.


--
grahammal
------------------------------------------------------------------------
grahammal's Profile: http://www.excelforum.com/member.php...o&userid=20336
View this thread: http://www.excelforum.com/showthread...hreadid=515670


NickHK

Print area
 
grahammal,
Try:
With ActiveSheet
.PageSetup.PrintArea = .UsedRange.Address
End With

NickHK

"grahammal" wrote
in message ...

If I wanted to set the print area to just print
Sheets("Sheet1").Range("A1":"E9")
rather than the whole sheet, how do I do this from a macro button. I
know that
ActiveSheet.Printout prints the whole sheet, but I need to set the
print area 1st.
The print area will be variable depending on what I decide to import
into the active sheet.


--
grahammal
------------------------------------------------------------------------
grahammal's Profile:

http://www.excelforum.com/member.php...o&userid=20336
View this thread: http://www.excelforum.com/showthread...hreadid=515670




grahammal[_18_]

Print area
 

Sheets("Sheet1").Range("A4":"A8")

Sub Button1_Click()
With ActiveSheet
PageSetup.PrintArea = .UsedRange.Address
End With
End Sub

What do I need to substitute with what for the above to work?
I assume that either the 'UsedRange' or the 'Address' part has to be
substituted with something for that to work.


--
grahammal
------------------------------------------------------------------------
grahammal's Profile: http://www.excelforum.com/member.php...o&userid=20336
View this thread: http://www.excelforum.com/showthread...hreadid=515670


GS

Print area
 
..UsedRange is a worksheet property that includes all cells on a sheet that
have data.

..Address is the absolute reference from the first cell in the upper left
corner, to the last cell in the lower right corner, of .UsedRange.

That means everything on the sheet will print!

If you can live with doing what you want manually, then select the cells to
print and specify "Selection" in the print dialog's "Print what" section.
Otherwise, you'll have to define the imported data as a named range and refer
to it in code.

Regards,
GS

"grahammal" wrote:


Sheets("Sheet1").Range("A4":"A8")

Sub Button1_Click()
With ActiveSheet
.PageSetup.PrintArea = .UsedRange.Address
End With
End Sub

What do I need to substitute with what for the above to work?
I assume that either the 'UsedRange' or the 'Address' part has to be
substituted with something for that to work.


--
grahammal
------------------------------------------------------------------------
grahammal's Profile: http://www.excelforum.com/member.php...o&userid=20336
View this thread: http://www.excelforum.com/showthread...hreadid=515670




All times are GMT +1. The time now is 02:04 AM.

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