假设我想在某个位置创建5个工作簿。我试图使用此代码,但它不起作用。 (运行时错误,自动化错误),它有什么问题?
Sub blabal()
Dim wbk As Workbook
Dim i As Integer
i = 1
Set wbk = Workbook.Add
Do Until i = 5
wbk.SaveAs "C:\Users\User1\Desktop\abc\" & i
wbk.Close
i = i + 1
Loop
End Sub
答案 0 :(得分:2)
Set wbk = Workbooks.Add
您需要指定Workbooks
而不是Workbook
。
Workbooks
是一个集合对象。您已将Workbook
添加到Workbooks
。
您还需要更改代码的顺序,因此您不是每次都关闭工作簿,或者您要关闭工作簿,但是之后又添加了一个新工作簿(并没有多大意义,但无论如何我都会展示一个例子。
Set wbk = Workbooks.Add
Do Until i = 5
wbk.SaveAs "C:\Users\User1\Desktop\abc\" & i
i = i + 1
Loop
或强>
Do Until i = 5
Set wbk = Workbooks.Add
wbk.SaveAs "F:\" & i
wbk.Close
i = i + 1
Loop