VBA 常量基础教程
VBA 常量是相对于VBA 变量的概念。不同于变量,常量一旦赋值,其值不能改变。在程序运行整个过程,其值一直保持不变,如果强行赋值新的数据,VBA 会报错。
使用VBA 常量,可以使一个值用更加简便的方式表达,提高编程效率。例如,使用Pi
代表”3.14159…”,在代码里直接使用Pi
代表 π 值。
声明常量
声明常量与声明变量类似,需要指明名称和数据类型。不同点在于,常量的值在声明时就需要指定。
声明常量的语法如下:
Const [常量名] As [数据类型] = [值]
其中,Const
是英文单词 Constant 的缩写,表示常量。
命名常量
与变量相同,常量命名需要符合以下条件,否则程序出错。
- 首字母必须以字母开头。
- 不能包含空格、.(英文句号)、!(感叹号)、@、&、$、# 等字符。
- 长度不能超过 255 个字符。
- 不能使用 VBA 中保存的关键词作为常量名。
常量类型
常量类型与变量类型相同,具体信息参考变量教程。
实例
现在看一个实例,将 π 的值作为一个常量声明,在后续的过程中,直接使用 Pi
作为 π 的值参与计算。
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
看一下结果:
总结
本篇我们学习了 VBA 中另一个基础概念,VBA 常量。常量与变量相对,是一个不变的值。在程序中,可以使一些复杂的值使用常量表示,简化代码,提高编程效率。
转载注明:文章转载自「懒人Excel - www.lanrenexcel.com」
本文标题:VBA 常量基础教程
为什么数字类型要用double
double类型可以表示小数,而integer、long类型均是整数类型。
“不能使用 VBA 中保存的关键词作为变量名”,此处应为“常量名”
感谢反馈,已修正
想问下 如果没有msg box 是不是需要把sub换成function?
也不需要,还是看这个过程的功能。如果需要返回值,那么应该用function。
问题已解决,谢谢。
良心作者
MsgBox那一句是什么意思啊
MsgBox 是 VBA 内置函数,用于对话框弹出传入的参数。
最后一句有错别字,应该是“提高编程效率”
感谢反馈,已更正。
代码运行结果为0,是什么原因啊
A1单元格是不是没有输入数字啊?
赞!
简单易懂
谢谢
r = Range(“A1”).Value
请问.Value,加了是干嘛的?
Range() 返回的是单元格对象,不能直接读取其值,需要通过 value 属性读取
常量首字母应该一般大写?(命名条件补充建议)
没有硬性标准,根据自己的喜好写就行。不过一般首字母大写或全部大写,比较容易区分哪些是常量,哪些是变量。
加油