Vba 无法识别工作表代码名
在我的代码中,我使用某个工作表的代码名 问题是,当我使用表单执行宏时,它无法识别代码名(变量接收空值) 原因可能是什么Vba 无法识别工作表代码名,vba,excel,Vba,Excel,在我的代码中,我使用某个工作表的代码名 问题是,当我使用表单执行宏时,它无法识别代码名(变量接收空值) 原因可能是什么 Dim sCodeName As String ' Get the codename of the newly created sheet sCodeName = Worksheets(atar).CodeName “atar”是一个变量,包含我的一张工作表的名称 谢谢。使用函数检查是否存在代码名 Function WorksheetCodeNameExists(wb
Dim sCodeName As String
' Get the codename of the newly created sheet
sCodeName = Worksheets(atar).CodeName
“atar”是一个变量,包含我的一张工作表的名称
谢谢。使用函数检查是否存在代码名
Function WorksheetCodeNameExists(wb As Workbook, sCodeName As String) As Boolean
Dim s As String
Dim ws As Worksheet
WorksheetCodeNameExists = False
For Each ws In wb.Worksheets
If StrComp(ws.CodeName, sCodeName, vbTextCompare) = 0 Then
WorksheetCodeNameExists = True
Exit For
End If
Next
Set ws = Nothing
End Function
转到“代码”视图,在左侧可以看到VBA项目及其图纸和模块。选择有问题的图纸并查看属性窗口 您会看到一个名为“(Name)”的字段和一个名为“Name”的字段。 “(名称)”是代码名,“名称”是图纸名称。现在将代码名与输出进行比较 编辑:
@Ralph速度更快,提供了一张具有完全相同信息的漂亮图片。我不知道您为什么要尝试将工作表的
CodeName
存储在字符串变量中。但是,您可以通过将sCodeName=
替换为MsgBox
来轻松验证上述行的结果,例如MsgBox工作表(atar).CodeName
。如果有一张表的名称存储在atar
中,那么您将在消息框中看到CodeName
。如果没有这样的工作表,您将收到一条错误消息。顺便说一句,以下插图可能有助于识别任何给定图纸的代码名: