如何从MS Access 2003 VBA操作MS Excel分页符

我有一个MS Access VBA代码生成下面显示的Excel电子表格,我需要从这里做我的分页符输出: 错误的输出

进入这个:

应该输出

以编程方式在MS Access VBA中。

我已经尝试了一堆代码(请参阅下面的代码片段),但是他们中的任何一个都没有做到这一点,也没有丝毫改变。

代码片段#1)

ActiveWindow.View = xlPageBreakPreview ActiveSheet.ResetAllPageBreaks i = 1 If ActiveSheet.HPageBreaks.Count > 0 Then Do Set ActiveSheet.HPageBreaks(i).Location = Range("A" & (i * 70) + 1) If i = ActiveSheet.HPageBreaks.Count Then Exit Do i = i + 1 Loop End If Do Until Cells((i * 70) + 3, 1).Value = "" ActiveSheet.HPageBreaks.Add Before:=Range("a" & (i * 73) + 1) i = i + 1 Loop ActiveWindow.View = xlNormalView 

代码片段#2)

 Dim Rng As Excel.Range Set Rng = xls.Rows("1:75") Rng(75).PageBreak = -4135 

代码片段#3)

 xls.HPageBreaks.Add Before:=xls.Cells(73, 1) 

任何援助,这是高度赞赏。 谢谢一堆! 🙂

我不是很了解你的片段,但是基于截图,你想要在一个页面上打印它,包含所有内容。 像这样的东西在Excel中设置打印区域为1页x 1页 –

 Sub breaks() Dim rLastCol As Long Dim rLastRow As Long With ActiveSheet rLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row rLastCol = .Cells(1, .Columns.Count).End(xlToLeft).Column With .PageSetup .PrintArea = Range("A1", Cells(rLastRow, rLastCol)).Address .FitToPagesWide = 1 .FitToPagesTall = False End With End With End Sub 

当然,这使用A列和第1行中最后使用的单元格,因此最右下angular的非空白。