[英]Printing Area into multiple pages with same header
我有一個關於將一個區域打印成多頁的問題,並在紙的頂部獲得相同的“區域”。
我的問題是當我以這種方式分頁時,它只會打印到分頁符,我沒有得到 printet 下面的數字。 當第二部分打印出來時,需要包括該區域的前13行(解釋所在)。
希望有人可以幫助
我有這個打印代碼:
Call Set_Print_Area
With ActiveSheet.PageSetup
.Orientation = xlPortrait
.PaperSize = xlPaperA4
.Draft = False
.Zoom = False
.FitToPagesTall = False
.FitToPagesWide = 1
.BlackAndWhite = True
.CenterHorizontally = False
.CenterVertically = True
ActiveSheet.HPageBreaks.Add Before:=ActiveSheet.Rows(56)
End With
Sub Set_Print_Area()
Dim lastCell As Long
Dim ws As Worksheet
lastCell = Range("P" & Rows.Count).End(xlUp).Offset(-4).Row
ActiveSheet.PageSetup.PrintArea = "AB1:AS" & lastCell
End Sub
對您的代碼進行小的調整。 添加了設置..PrintTitleRows = $1:$13
。 不知道你為什么要在第 56 行中斷,但我想這是你的決定。 在我的機器上使用 A4 打印時,它並不完全適合,但這可能是設置差異。
Option Explicit
Sub Set_Print_Area()
Dim ws As Worksheet
Set ws = ActiveSheet '// or whatever sheet you want to use
Application.PrintCommunication = False
With ws.PageSetup
.Orientation = xlPortrait
.PaperSize = xlPaperA4
.Draft = False
.Zoom = False
.FitToPagesTall = False
.FitToPagesWide = 1
.BlackAndWhite = True
.CenterHorizontally = False
.CenterVertically = True
.PrintTitleRows = "$1:$13"
.PrintTitleColumns = ""
'// are you sure you want to force page break on a fixed row?
ws.HPageBreaks.Add Before:=ws.Rows(56)
End With
Dim lastCellOfColP As Range
Set lastCellOfColP = ws.Range("P" & ws.Rows.Count).End(xlUp)
Dim lastPrintedRow As Long
lastPrintedRow = lastCellOfColP.Offset(-4).Row
ws.PageSetup.PrintArea = "AB1:AS" & lastPrintedRow
Application.PrintCommunication = True
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.