
以下内容来自于网络。
VBA 常量是相对于VBA 变量的概念。不同于变量,常量一旦赋值,其值不能改变。在程序运行整个过程,其值一直保持不变,如果强行赋值新的数据,VBA 会报错。
使用VBA 常量,可以使一个值用更加简便的方式表达,提高编程效率。例如,使用Pi代表”3.14159…”,在代码里直接使用Pi代表 π 值。
有三种类型的常量:
内部常量或系统定义的常量由应用程序和控件提供。提供对象库的其他应用程序(如MicrosoftAccess、Excel、Project和Word)也提供可用于其对象、方法和属性的常量列表。
使用 Const 语句声明符号常量或用户定义的常量。
条件编译器常量 是使用 #Const 语句 (指令) 声明的。
我们更长用的是第二种方式,用户自定义常量,其它两种了解即可。、
命名常量
与变量相同,常量命名需要符合以下条件,否则程序出错。
首字母必须以字母开头。
不能包含空格、.(英文句号)、!(感叹号)、@、&、$、# 等字符。
长度不能超过 255 个字符。
不能使用 VBA 中保存的关键词作为常量名。
常量类型
常量类型与变量类型相同,具体信息参考变量教程。
语法
在VBA中,我们需要给声明的常量赋值。 如果我们尝试更改常量的值,则会引发错误。
作用域
常量可以定义在模块内或过程内
如果时模块级,也可以用 public private等关键字,声明作用域常量的声明可以在 模块的第一个sub 前,也可以在sub内
比如
Public Const a5 As String = "hello"
实例:
'声明 π 常量
Const Pi As Double = 3.14159
Sub MyCode()
'声明 π 常量
Const Pi As Double = 3.14159
'声明半径 r 和周长 C 变量
Dim r As Double
Dim C As Double
'从单元格 A1 读取半径值
r = Range("A1").Value
'计算周长
C = 2 * Pi * r
MsgBox "周长为:" & C
End Sub
看一下结果:
