我想问一下重命名excel表,我想用新名称重命名表:旧名+ + v1。
因此,如果我当前的工作表名称是 test ,那么我想要新名称 test_v1 。
我只知道重命名excel表的标准vba,它是通过表单内容重命名excel表。
Sub Test()
Dim WS As Worksheet
For Each WS In Sheets
WS.Name = WS.Range("A5")
Next WS
End Sub
答案 0 :(得分:18)
“无褶边”选项如下:
ActiveSheet.Name = "New Name"
和
Sheets("Sheet2").Name = "New Name"
您还可以查看录制的宏并查看它为您提供的代码,这是开始学习更多香草功能的好方法。
答案 1 :(得分:14)
这应该这样做:
WS.Name = WS.Name & "_v1"
答案 2 :(得分:5)
建议您添加处理以测试是否存在任何要重命名的工作表:
Sub Test()
Dim ws As Worksheet
Dim ws1 As Worksheet
Dim strErr As String
On Error Resume Next
For Each ws In ActiveWorkbook.Sheets
Set ws1 = Sheets(ws.Name & "_v1")
If ws1 Is Nothing Then
ws.Name = ws.Name & "_v1"
Else
strErr = strErr & ws.Name & "_v1" & vbNewLine
End If
Set ws1 = Nothing
Next
On Error GoTo 0
If Len(strErr) > 0 Then MsgBox strErr, vbOKOnly, "these sheets already existed"
End Sub