我有一个表名数组。我想从其他文件复制数据并将数据粘贴到各自的工作表中。但它没有找到该工作表。它创建在这个步骤中的错误:使用VBA Excel查找和激活工作表
worksheets.(sheets(i)).Activate
这里是我的代码:
Sub NewWorkshet()
Dim criteria(40) As Integer
Dim i As Integer
Dim MyFile As String
MyFile = Application.GetOpenFilename()
criteria(0) = 335
criteria(1) = 336
criteria(2) = 337
criteria(3) = 338
criteria(4) = 339
criteria(5) = 351
criteria(6) = 392
criteria(7) = 393
Dim sheets As Variant
sheets = Array(a335, a336, a337, a338, a339, a351, a392, a393)
For i = 0 To 7
' Remove Filter
Windows("firstbook.xlsx").Activate
ActiveSheet.Range("$A$1:$S$6274").AutoFilter Field:=17
Workbooks.Open (MyFile)
Worksheets("first").Select
ActiveSheet.Range("$A$1:$O$3339").AutoFilter Field:=2, Criteria1:=criteria(i)
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("firstbook").Activate
Worksheets("sheets(i)").Select
Range("B2").Select
Selection.End(xlDown).Select
Selection.Offset(1, -1).Select
ActiveSheet.Paste
Workbooks(MyFile).Close SaveChanges:=False
Next i
End Sub
尼莱什请澄清。你有一个叫做“firstbook”的工作簿,里面有表格名称“a335”,“a336”等,你想复制到哪些书到哪?另一个工作簿并创建具有相同名称的工作表? – micstr