从“此工作表”中selectExcel VBA中的结尾

我正在用excel编写报告。

  • 最后一步是select大部分纸张(包括封面本身的“封面”页面右侧的所有页面)并将其打印到PDF中。
  • 表单可能会有所不同。

我目前正在手动执行此操作,但如果您知道正确的命令,似乎可以自动执行此操作。

是否有可能沿着下面的路线做一些事情?

Sheets(Array(Sheets("Cover")..Sheets(Worksheets.Count())).Select ActiveSheet.ExportAsFixedFormat 

我认为这不是一蹴而就的。

 Sub Tester() Dim i As Long, fnd As Boolean For i = 1 To ActiveWorkbook.Sheets.Count With ActiveWorkbook.Sheets(i) If .Name = "Cover" Then fnd = True .Select Else If fnd Then .Select False End If End With Next i End Sub 

如果您在一个表格中input一系列位置,即可以单行执行

 Sheets(Application.Transpose(Application.Evaluate("=ROW(" & Sheets("Cover").Index & ":" & Sheets(Sheets.Count).Index & ")"))).Select 

怎么运行的

  1. 如果Cover是12号表格,总共有20页,那么("=ROW(" & Sheets("Cover").Index & ":" & Sheets(Sheets.Count).Index & ")")))等同于到"=ROW("12:20")
  2. Application.Evaluate产生一个包含{12,13,14 … 20}的二维数组
  3. Application.Transpose其转换为一维数组,该数组已经被Sheets(1D Array).Select处理