我的电子表格中有两个表格(一个在另一个上面,由几行分隔),称之为T1和T2。 T1是动态的,包含多少行,T2是静态的。我可以很容易地找出T1结束的行然后再添加1 - 调用此变量T1EndRow。
我想对它进行编码,因此它会知道从第1行到T1EndRow的所有内容都将出现在打印预览的第一页上。 T2将流向第二页。
我该怎么做?
答案 0 :(得分:1)
使用HPageBreaks
对象的VPageBreaks
和Sheet
成员设置水平和垂直分页符的位置。
例如,如果T1EndRow是您要在第1页上显示的最后一行中的命名范围,请转到:
Set ActiveSheet.HPageBreaks(1).Location = ActiveSheet.Range("T1EndRow")
如果T1EndRow是Long
,请尝试:
Set ActiveSheet.HPageBreaks(1).Location = ActiveSheet.Cells(T1EndRow, 1)
奇怪的是,除非你处于xlPageBreakPreview模式,否则Excel会在这一行上抛出错误(这是调整分页符的唯一方法):
ActiveWindow.View = xlPageBreakPreview
Set Sheet1.HPageBreaks(1).Location = Sheet1.Cells(58, 1)
ActiveWindow.View = xlNormalView
我还注意到,如果您设置的.Location
超出工作表的UsedRange
,则会引发其他错误,因此您可能需要确保已满足要求。