发布时间:2022-10-07 文章分类:Excel教程 投稿人:王小丽 字号: 默认 | | 超大 打印

VBA提供了一些内置枚举常量,例如MsgBox函数的buttons参数成员vbOkOnly、vbOkCancel等,可以在程序中方便使用,并且这些常量可读性好,便于程序维护。当然,你可以创建自已的枚举常量,用于自已的代码。

使用Enum语句来创建枚举常量。Enum语句用于定义常量的名称、其内部各常量成员的名称以及对应的值。其语法为:

[Public Private] Enum 常量名

常量成员名 [ = 常量数值 ]

常量成员名 [ = 常量数值 ]

End Enum

说明:

Enum语句只能放置在代码模块的声明部分

常量数值必须为Long型,可以是一个正数或负数

如果从一开始就省略了常量数值,那么其常量成员名被赋值为0,后面依次加1。如果省略的不是第一个成员名,那么后面的比前面的数值大1

创建枚举常量后,就可以将变量声明为枚举常量,也可以作为自定义函数返回值的类型

枚举中的常量数值可以叠加,例如MsgBox函数中buttons参数值可以设置为vbCritical + vbYesNo

示例

下面的代码创建自定义枚举常量,并在程序中使用。

Enum MyText

MyExcel = 1

MyPerfect = 2

MyExclaim = 4

End Enum

Sub ExcelPerfect(eText AsMyText)

Dim strText As String

Select Case eText

Case 1

strText = “Excel”

Case 2

strText = ” ”

Case 3

strText = ” Excel”

Case 4

strText = “微信 ”

Case 5

strText = “excelperfect”

End Select

MsgBox strText

End Sub

Sub CallExcelPerfect()

ExcelPerfect MyExcel

ExcelPerfect MyPerfect + MyExcel

End Sub

运行CallExcelPerfect过程后的结果如下和所示。

excel自定义枚举常量

excel自定义枚举常量