ExcelBanter

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

Ernie

Print
 
I need to create a macro to print the active page. Can anyone help me with
the codes Please?
--
thanks in advance

Chip Pearson

Print
 
Try

ActiveSheet.PrintOut



--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com


"ernie" wrote in message
...
I need to create a macro to print the active page. Can anyone
help me with
the codes Please?
--
thanks in advance




Ernie

Print
 
Ok i tried it, but it prints out all the pages in the worksheet. i only want
to print out the active 'PAGE'. I would also like the codes to specify pages
and number of copies to print out.
--
help a friend help you


"Chip Pearson" wrote:

Try

ActiveSheet.PrintOut



--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com


"ernie" wrote in message
...
I need to create a macro to print the active page. Can anyone
help me with
the codes Please?
--
thanks in advance





Tom Ogilvy

Print
 
Here is something Dana Delouis posted some time ago:

Sub Print_Page_of_ActiveCell()
'// Prints the page of the active cell only
'// Dana DeLouis:
'// Not tested completely for Excel 2k


Dim pb As Variant
Dim Nr As Long, Nc As Integer
Dim MaxColumns As Long
Dim MaxRows As Long
Dim CurrentPage As Long
Dim TotalPages As Long


If Selection.Cells.Count 1 Then
MsgBox "Select 1 Cell Only"
Exit Sub
End If


'// Save Settings
ActiveWorkbook.CustomViews.Add _
ViewName:="_temp", _
PrintSettings:=True, _
RowColSettings:=True


With ActiveSheet.PageSetup
.PrintArea = False
.Order = xlOverThenDown
End With


TotalPages = ExecuteExcel4Macro("Get.Document(50)")
MaxColumns = ActiveSheet.VPageBreaks.Count + 1
MaxRows = ActiveSheet.HPageBreaks.Count + 1
' or MaxRows = TotalPages / MaxColumns


For Each pb In ActiveSheet.HPageBreaks
If pb.Location.Row <= ActiveCell.Row Then
Nr = Nr + 1
Else
Exit For
End If
Next


For Each pb In ActiveSheet.VPageBreaks
If pb.Location.Column <= ActiveCell.Column Then
Nc = Nc + 1
Else
Exit For
End If
Next


Nc = Nc + 1
CurrentPage = Nr * MaxColumns + Nc


'// Reset what I had
With ActiveWorkbook.CustomViews("_temp")
.Show
.Delete
End With


'MsgBox "Page : " & CurrentPage & " out of " & TotalPages


// Print the selected page
ActiveSheet.PrintOut From:=CurrentPage, To:=CurrentPage, _
Copies:=1
End Sub

--
Regards,
Tom Ogilvy


"ernie" wrote:

Ok i tried it, but it prints out all the pages in the worksheet. i only want
to print out the active 'PAGE'. I would also like the codes to specify pages
and number of copies to print out.
--
help a friend help you


"Chip Pearson" wrote:

Try

ActiveSheet.PrintOut



--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com


"ernie" wrote in message
...
I need to create a macro to print the active page. Can anyone
help me with
the codes Please?
--
thanks in advance






All times are GMT +1. The time now is 03:20 PM.

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