我正在創建一個宏,它將從較大的工作簿中選擇工作表,將這些工作表移動並保存爲新工作簿,然後移至下一組。數組下標超出範圍
我創建了一個具有開始和結束值(由圖紙索引號指定)的僞「數組」。
在完成保存文件的部分之後,但在拉動下一組工作表的循環之前,我遇到「下標超出範圍」錯誤。
以下是我的代碼。任何幫助這個錯誤,將不勝感激。
Dim Start As Integer
Dim Finish As Integer
Dim SR As Integer
Dim SC As Integer
Dim ER As Integer
Dim EC As Integer
SR = 2
SC = 5
ER = 2
EC = 6
Start = Sheets("REF").Cells(SR, SC).Value
Finish = Sheets("REF").Cells(ER, EC).Value
Dim sheetArray() As Double
Dim i As Integer
Dim c As Integer
i = 0
c = Start
lastrow = Cells(100, SC).End(xlUp).Row
Do Until SR = lastrow
Do Until c > Finish
ReDim Preserve sheetarray (0 to i)
i = i + 1
c = c + 1
Loop
Sheets(sheetarray).Copy
ActiveWorkbook.SaveAs Filename:= _ XXXXXXXXXXXXXXXXXX
C = Start
i = 0
SR = SR + 1
ER = ER + 1
Loop
編輯:16:35美國中部
目前,相關的代碼塊匹配的是上面,通過線lastrow = Cells(100, SC).End(xlUp).Row
做,直到SR = LASTROW
ReDim sheetArray(i)
Do Until c > Finish
ReDim Preserve sheetArray(i)
sheetArray(i) = c
i = i + 1
c = c + 1
Loop
Sheets(sheetArray).Copy
ActiveWorkbook.SaveAs Filename:= _
XXXXXXXXXXXXX
c = Start
i = 0
SR = SR + 1
ER = ER + 1
Loop
表索引從1開始 – Sorceri
什麼行會給你一個錯誤? – Yaegz
我在「Sheets(sheetarray).copy」行獲取錯誤,但是在循環運行一次後,創建第一個工作簿。 –