[英]Select range of sheets in Excel VBA
我正在嘗試在 Excel 宏中選擇一系列工作表,以便可以打印它們。
我想打印一個范圍,即 Sheet2-Sheetx,其中 x 是一個變量。
我試過錄制一個宏來做我想做的事,但它使用工作表名稱而不是工作表引用,當然不支持變量。
在這個例子中,我選擇了三張紙,所以 x=3:
Sheets(Array("Data", "Data (2)", "Data (3)")).Select
ActiveWindow.SelectedSheets.PrintOut preview:=True
我本以為這很簡單,但似乎無法弄清楚。
提前致謝。
.Name
是獲取工作表名稱所需的屬性,如下所示:
WorkSheets(Array(Worksheets(1).Name, Worksheets(2).Name, Worksheets(3).Name)).Select
如果你想用N
作為一個變量,你可以這樣做:
Public Sub SelectN()
Dim N As Long: N = 2
Dim cnt As Long
Dim arrOfWs As Variant
ReDim arrOfWs(N - 1)
For cnt = 1 To N
arrOfWs(cnt - 1) = Worksheets(cnt).Name
Next cnt
Worksheets(arrOfWs).Select
End Sub
您的代碼似乎對我有用,但是我會縮短它:
Sheets(Array("Data", "Data (2)", "Data (3)")).Printout Preview: = -1
檢查工作表的名稱拼寫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.