需求:打开tb1
打开tb2
把tb1所有的sheet复制到tb2里
问题: 速度有点慢,使用ws.Copy(Before:=.Item(1)) ,如果tb1里有30个sheet,需要等待一会儿,效率有点低,有其他方法吗?
源码:
Dim Wb As MSExcel.Workbook = App.WorkBooks.open(tb1)
Dim Ws As MSExcel.WorkSheet
Dim WbNew As MSExcel.Workbook = App.WorkBooks.open(tb2)
ShowAppWindow(tb3, 2)
Dim wsNew As MSExcel.WorkSheet = Wb.WorkSheets(1) '指定要复制的工作表
'''获取sheet名称
For Each WsName As MSExcel.WorkSheet In Wb.WorkSheets
' Output.Show(WsName.Name)
ws = Wb.WorkSheets(WsName.Name)
With WbNew.WorkSheets
ws.Copy(Before:=.Item(1))'复制到最前面
End With
Next
WbNew.Save