【问题标题】:Excel VB script to print all workbooks' sheetsExcel VB 脚本打印所有工作簿的工作表
【发布时间】:2011-04-17 11:18:36
【问题描述】:

是否使用 excel 的 vb 脚本(或宏)将其所有工作表打印到给定的打印机?张数可变。

Excel 的版本是 2007。

谢谢

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    看看like this 是不是你要找的东西。您只需要设置一个循环来选择所有工作表,然后在除第一个之外的所有工作表上使用 select false 方法。

    这是我拼凑起来的(我没有进行广泛的测试,而且我的 VBA 有点生锈)

    Sub loopandprint()
      Dim ws As Worksheet
      Dim i As Integer
      i = 0
      For Each ws In ActiveWorkbook.Worksheets
        If (i = 0) Then
            ws.Select
        Else
            ws.Select False
    
        End If
    
      i = i + 1
      Next ws
      ActiveWindow.SelectedSheets.PrintOut Copies:=1
    
    End Sub
    

    【讨论】:

    • 感谢您的回复,但实际上我需要遍历工作表,因为它的数量可能会有所不同。
    • 是的,这就是我设置循环的意思。我并没有说这将是一个完美的契合 :) 请参阅 this 了解如何迭代所有工作表。
    • 谢谢!有效。最后你能告诉我如何一次打印一张吗?
    • 第一个链接也涵盖了这一点,您只需将工作表编号放在() 中,例如ActiveWorkbook.Sheets(1).Select,我在示例中有ws.select。还是您的意思是以其他方式选择它们?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-14
    • 1970-01-01
    • 2017-08-02
    • 1970-01-01
    相关资源
    最近更新 更多