如何用vba获取excel工作表打印的总页数?

在打印excel工作簿文件时,每个excel工作表会按照顺序依次打印。

每个excel工作表根据数据内容和页面布局设置可以打印一页或者多页。

如果要用vba获取每个工作表实际打印出来的页数,需要使用Pages对象和Page对象。

以下vba代码通过遍历每个工作表的PageSetup对象的Pages属性,获取每个工作表的实际打印页数:

Sub QQ1722187970()
    Excel.Application.ScreenUpdating = False
    Excel.Application.Calculation = xlCalculationManual
    Dim oWK As Worksheet
    For Each oWK In Excel.ThisWorkbook.Worksheets
        With oWK.PageSetup
            '获取工作表的打印总页数
             iTotal = .Pages.Count
            Debug.Print iTotal
        End With
    Next
    Excel.Application.ScreenUpdating = True
    Excel.Application.Calculation = xlCalculationAutomatic
End Sub
       

发表评论