我有以下代碼,它在工作簿中搜索名爲1到12的工作表,並且如果找到1到12的工作表,則創建兩個工作表。如果1到12之間的任何頁面不存在,它會考慮錯誤。每次可以從1到12中缺少一個或多個表單。是否可以創建另一個數組或更改數組內容,這些內容只包含與工作簿中存在的表單相對應的數字,以便我可以使用此修改所有其他代碼中的數組將應用於這些表單。麻煩建議與一個新的修改後的數組只能中1現有片材的被創建來12.更改陣列內容有條件地創建修改後的陣列
Sub add_sheets()
Dim MyArr, j As Long
Dim wsarray As Sheets
Dim ws As Worksheet
MyArr = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12")
For j = 0 To UBound(MyArr)
Set ws = Nothing
On Error Resume Next
Set ws = Worksheets(MyArr(j))
On Error GoTo 0
If Not ws Is Nothing Then
ActiveWorkbook.Sheets.Add After:=ws, Count:=2
Sheets(ActiveSheet.Index - 2).Activate
Else
Err.Clear
End If
Next
End Sub
你需要什麼的陣列?你爲什麼不能循環遍歷所有現有的工作表? – Raystafarian
@ Raystafarian的建議的具體版本:'對於工作表中的每個ws'。那麼你不必擔心什麼是/不缺的。 –