有没有办法在 VBA 中获取枚举?类似于 C# 的这个示例,但适用于 VBA?
using System;
class EnumsExampleZ
{
private enum SiteNames
{
SomeSample = 1,
SomeOtherSample = 2,
SomeThirdSample = 3
}
static void Main()
{
Type enumType = typeof(SiteNames);
string[] enumName = enumType.GetEnumNames();
for (int i = 0; i < enumName.Length; i++)
{
Console.WriteLine(enumName[i]);
}
}
}
假设我们有以下内容:
Enum FruitType
Apple = 1
Orange = 2
Plum = 3
End Enum
我们如何在即时窗口中显示这些:
Apple
Orange
Plum
最佳答案
没有内置函数,尽管在具体情况下很容易推出自己的函数:
Enum FruitType
Apple = 1
Orange = 2
Plum = 3
End Enum
Function EnumName(i As Long) As String
EnumName = Array("Apple","Orange","Plum")(i-1)
End Function
如果你有几个不同的枚举,你可以添加一个参数,它是枚举的字符串名称和
Select Case
在上面。说了这么多,可能可以通过编写 VBA 编辑器的脚本来做一些事情,尽管这不太值得(恕我直言)。
关于vba - 有没有办法在 VBA 中获取枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41578348/