编程实现添加指定名字的工作表
如何在一个工作簿中,点击一个“新添工作表”按钮,然后添加一个指定名字的工作表 ,
依次再点击“新添工作表”按钮,工作薄中再新添加指定名字后缀递增编号的工作表?
本例是在一个已有 5 页工作表的工作薄中,边试错边修改,最终完成了正确代码的编
写。编程过程运行了错误处理功能(On Error)。有兴趣的朋友,可以通过思考错误程序
错误原因的方式,以此来增加 VBA 编程的经验。
一. 在《Excel 经典代码大全》的书中,有如下一段增加新工作表的代码:
Sub AddNewWorksheet()
Dim wkSht As Worksheet
With ThisWorkbook
Set wkSht=.Worksheets.Add(After:=.Sheets(.Sheets.Count))
End With
wkSht.Name="新添工作表"
Set wkSht=Nothing
End Sub
这段代码可以实现添加指定名称的工作表,可是再次运行此段过程后,系统就会报错,
因为再次添加的工作表名字与刚刚添加的工作表名字一样。下面尝试来解决再次运行
添加工作表过程,而让新工作表的名字自动递增上一个后缀编号。
二. 尝试 1。代码如下:
Sub AddNewWorksheet()
Dim wkSht As Worksheet
Dim wkSht2 As Worksheet
Dim i, j As Integer
On Error GoTo setAnotherName
With ThisWorkbook
Set wkSht = .Worksheets.Add(After:=.Sheets(.Sheets.Count))
j = .Sheets.Count
For i = 1 To j
Set wkSht2 = .Worksheets("Sheet" & i)
If wkSht2.Name = "新添工作表" Then GoTo setAnotherName
Next
End With
wkSht.Name = "新添工作表"
setAnotherName:
wkSht.Name = "新添工作表" & j + 1
Set wkSht2 = Nothing
Set wkSht = Nothing
End Sub
第一次单击新添加工作表按钮后,新添加工作表的名字为“新添工作表 7”,再次单击
评论0
最新资源