创建新工作表时,可以使用名称设置名称..name = "Name Here!"但是,VBA对象仍将使用"Sheet1"作为名称.
如何创建新工作表并设置VBA对象名称?
请注意,我不是问如何设置工作簿上显示的名称,也不是.name属性.
这应该做的伎俩:
Public Sub Change_Codename()
Dim ws As Object
Set ws = ActiveWorkbook.Sheets("Sheet1")
With ws
.Parent.VBProject.VBComponents(.CodeName) _
.Properties("_CodeName") = "Test"
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
只需将"测试"更改为您希望工作表的代码名称.
以下是执行代码后我的对象的外观:
此外,通过转到文件 - >选项 - >信任中心 - >信任中心设置...,确保您拥有对VBA项目模型的可信访问权限.在宏设置下,请务必勾选"信任对VBA项目对象模型的访问权限",如下所示: