按特定顺序打印页面

时间:2019-07-16 08:28:53

标签: excel vba printing

出于好奇,我有一个运行良好的代码,但看起来有点“不合适”,有没有更好的方法可以打印1,6,2,7,3,8,4,9页,以此顺序5?

Sub PrntPgs()
ActiveSheet.PrintOut 1, 1, 1
ActiveSheet.PrintOut 6, 6, 1
ActiveSheet.PrintOut 2, 2, 1
ActiveSheet.PrintOut 7, 7, 1
ActiveSheet.PrintOut 3, 3, 1
ActiveSheet.PrintOut 8, 8, 1
ActiveSheet.PrintOut 4, 4, 1
ActiveSheet.PrintOut 9, 9, 1
ActiveSheet.PrintOut 5, 5, 1
End Sub

感谢您的帮助

尼克。

1 个答案:

答案 0 :(得分:1)

您可以将页码放在数组中并使用循环

Option Explicit

Public Sub PrntPgs()
    Dim PageList() As Variant
    PageList = Array(1, 6, 2, 7, 3, 8, 4, 9, 5)

    Dim PageNo As Variant
    For Each PageNo In PageList
        ActiveSheet.PrintOut PageNo, PageNo, 1
    Next PageNo
End Sub