我有以下代码,它在工作簿中搜索名为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'。那么你不必担心什么是/不缺的。 –