【问题标题】:Print Pages in Certain Order以特定顺序打印页面
【发布时间】:2019-07-16 08:28:53
【问题描述】:

我有一个运行良好但看起来有点“不正确”的代码,只是出于好奇,有没有更好的方法可以打印第 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

任何帮助表示赞赏

尼克。

【问题讨论】:

    标签: excel vba printing


    【解决方案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
    

    【讨论】:

    • 谢谢伙计,这好多了。我从没想过数组列表。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    相关资源
    最近更新 更多