gpt4 book ai didi

Excel VBA - 设置枚举元素的值

转载 作者:行者123 更新时间:2023-12-01 18:07:09 29 4
gpt4 key购买 nike

在类模块中有:

Private Enum colType
ID = "A"
SSN = "B"
lName = "H"
fName = "G"
End Enum

作为私有(private)成员(member)。每当类初始化时,我都会收到编译错误:类型不匹配消息。如果我将 colType 声明为 Private Enum coltype As String。这会被突出显示为红色作为错误,我收到消息:

Compile Error: Expected end of statement

Excel VBA 中不允许指定枚举元素的值吗?

最佳答案

正如评论中所写,这是不可能的。尽管我过去使用过,但还是有可能的解决方法。有:

Private Enum colType
ID = 1
SSN = 2
lName = 3
fName = 4
End Enum

然后创建一个单独的函数的 String 属性,例如:

Public Property Get colType_String(colType) as String
Dim v as Variant
v= Array("A","B", ...)
colType_String = vba.cstr(v(colType))
End Property

这不是最通用的解决方案,但它很容易实现并且可以完成工作...如果您已经在类模块中拥有它,您甚至可以在私有(private) colType 变量上使用属性,并且不需要colType 输入到属性中。

关于Excel VBA - 设置枚举元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20846854/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com