[算表] 請問VBA語法哪裡寫錯 謝謝

作者: ifye (回家真好)   2021-02-06 15:19:06
軟體:EXCEL
版本: office365
請教一下想
這裡執行時原本沒有問題
Sub EX()
Dim iPath As String
Dim NewName As String
Dim ibook As Workbook
Application.ScreenUpdating = False
iPath = "C:\Users\ifye0\Desktop\" '指定路徑
NewName = Format(Now, "yyyymmddhhmmss") & CStr(Sheets("工作表1").Range("A1"))
Set ibook = ActiveWorkbook
With Workbooks.Add: ibook.Activate
Sheets("工作表1").Range("A1:G10").Copy .Sheets(1).Range("A1"):
.Sheets(1).Name = "工作表1"
.SaveAs iPath & NewName: .Close True
End With: Set ibook = Nothing
End Sub
但是在
Sheets("工作表1").Range("A1:G10").Copy .Sheets(1).Range("A1"):
.Sheets(1).Name = "工作表1"
加入下面這一段就會秀出ERROR
Sheets("工作表2").Range("A1:G10").Copy .Sheets(2).Range("A1"):
.Sheets(2).Name = "工作表2"
執行階段錯誤9
陣列索引超出範圍
請問是為什麼
感謝
https://imgur.com/a/TzYt0Qn
https://imgur.com/IliFurp
作者: soyoso (我是耀宗)   2021-02-06 15:34:00
看新活頁簿是不是只有一張工作表,只有一張工作表的話,要複製到第二張工作表時就會出現該錯誤訊息,可先於新活頁簿內新增工作表worksheets.add、sheets.add方式排除
作者: ifye (回家真好)   2021-02-06 16:16:00
加入: .Worksheets.Add after:=ActiveSheet後成功 感謝S大

Links booklink

Contact Us: admin [ a t ] ucptt.com