我正在尝试使用以下内容添加工作表:ThisWorkbook.Sheets.Add
我可以添加一张纸但是当我尝试添加两张纸时,它会给我一个错误:应用程序定义或对象定义错误。
以下是添加表单的代码:
Application.ScreenUpdating = False
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets.Add(after:=Worksheets(Worksheets.Count), Count:=2, Type:="C:\Users\TestUser\Desktop\TestWorksheet.xltm")
Set ws = Nothing
Application.ScreenUpdating = True
当我更改Count:=1
它工作正常时,会显示Count:=2
提前致谢
答案 0 :(得分:2)
这是因为您将其设置为WS
,并将其定义为工作表。所以它不能包含多个工作表
答案 1 :(得分:1)
“计数”仅在您尝试添加 xlWorksheet(默认情况下), xlChart , xlExcel4MacroSheet 或的 xlExcel4IntlMacroSheet 强>
例如
Sub Sample1()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets.Add(after:=Worksheets(Worksheets.Count), Count:=5, Type:=xlWorksheet)
Set ws = Nothing
End Sub
即使您不包含xlWorksheet,也可以默认使用它。
从模板添加时,必须循环执行。例如
Sub Sample2()
Dim ws As Worksheet
Dim i As Long
Application.ScreenUpdating = False
i = 1
Do While i < 3 '<~~ Adding 2 times
Set ws = ThisWorkbook.Sheets.Add(after:=Worksheets(Worksheets.Count), _
Type:="C:\Users\TestUser\Desktop\TestWorksheet.xltm")
i = i + 1
Loop
Set ws = Nothing
Application.ScreenUpdating = True
End Sub