我想在工作簿中可用的工作表总数之后添加一个工作表。
我声明了一个变量,以便用户可以命名新工作表。如果用户决定不命名错误,我有一个条件来捕获错误。
sheetName = InputBox("Enter new sheet name.")
If sheetName = "" Then
Sheets.Add After:=ActiveSheet
Else
Sheets.Add(After:=Sheets(Sheets(Sheets.Count).Name)).Name = sheetName
End If
上面的代码在活动工作表之后添加一个工作表。
我试过更换
Sheets.Add After:=ActiveSheet
跟
Sheets.Add After:=Sheets(Sheets.Count).Name
我也尝试了工作表对象,但不起作用。
> 使用.Add After:=
时,您必须指定您希望它添加的工作表对象,而不是名称。所以使用:
Worksheets.Add After:=Worksheets(Worksheets.Count)
每次调用时,都会在最后一个位置添加一个新工作表。
如果要更改创建的新工作表的名称,可以使用:
Dim ws As Worksheet
Set ws = Worksheets.Add(After:=Worksheets(Worksheets.Count))
ws.Name = "New Worksheet Name"