有没有办法在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
John Coleman.. 7
没有内置功能,虽然它很容易在具体的情况下滚动你自己:
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编辑器编写脚本来做一些事情,虽然它不太值得(恕我直言).
没有内置功能,虽然它很容易在具体的情况下滚动你自己:
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编辑器编写脚本来做一些事情,虽然它不太值得(恕我直言).