如何解决VBA - 如果工作表名称已存在,则创建一个新工作表并添加后缀
我是 VBA 的新手。我想创建新工作表并从主工作表的单元格 (A1) 命名它。如果新工作表名称已被使用,我想在新工作表名称后添加后缀“(1)”。任何帮助都会很棒。
解决方法
我已经测试了以下内容,它似乎可以满足您的要求。后缀会根据工作簿中已命名工作表的数量逐渐增加。不过,可能有更好的方法,但我不是真正的 VBA 专家。
归功于我针对您的问题改编的另一个答案:Excel VBA Trying to create a new worksheet
Sub addWorksheet()
Dim worksheetName As Variant
Dim i As Integer
i = 0
worksheetName = ActiveWorkbook.Worksheets("Sheet1").Range("A1").Value
For Each ws In ThisWorkbook.Worksheets
worksheetExists = (InStr(1,ws.Name,worksheetName,vbTextCompare) = 1)
If worksheetExists Then
i = i + 1
End If
Next ws
If i > 0 Then
worksheetName = worksheetName & "(" & i & ")"
End If
With ThisWorkbook.Worksheets.Add
.Name = worksheetName
End With
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。