vba快速入门03-变量与常量
文章目录
变量
值可以变化的量就是变量。变量主要是用来保存程序运行过程中需要的临时保存值或对象。
声明变量
变量都是保存在内存中的,要想使用变量,首先需要在内存中申请一块区域用来保存变量的值。声明变量就可以申请内存区域。那么如何声明变量呢?
声明变量的语法格式如下:
Dim 变量名 As 数据类型
Dim语句主要用于声明变量并分配储存空间。其主要目的是告知用户该变量为自定义变量,声明后程序会自动记录该变量的类型等信息。
变量名命名要求
- 变量必须以字母或汉字开头(日语假名,汉语也是可以的),不能包含空格、句号、感叹号、@、&、$和#等特殊符号,最长不能超过255个字符(一个汉字计2个字符)。
- 不区分大小写。
- 使用的名称不能与VBA本身的函数和关键字相同。
注意: VBA本身的函数和关键字就不介绍了。请参考。
数据类型将会在下一节介绍。
例1,声明变量a,b。过程名是varTest,关于过程的讲解会在以后的教程中详细说明,现在你就将其理解成VBA的执行单位,里面可以包含代码。
|
|
例2,声明不合法的变量1a,_b,VBE编辑器提示编译错误。
|
|
VBE编辑器提示编译错误如下图。
变量赋值
声明变量只是定义了一个变量,但是还没有值。变量赋值其实就是将指定的数值、字符串、表达式等通过赋值符号“=”赋给指定的变量名。
变量赋值的格式:
变量名 = 变量值
例3,声明变量a,b,c并赋值。最后在立即窗口打印变量的值。
|
|
以上程序的运行结果如下:
隐式声明
隐式声明是指在使用一个变量之前,并没有声明该变量。使用该变量时,vba会自动创建该变量,变量会被自动分配一个数据类型Variant,可以保存数字、字符串和其他信息类型。与隐式声明相对,上面所讲的Dim语句声明变量也称为显式声明变量。
TypeName函数可以显示变量的类型。Variant类型的数据返回Empty。
例4,显式声明变量a,b,隐式声明变量c
|
|
以上程序的运行结果如下:
|
|
强制声明变量(取消隐式声明变量)
虽然隐式声明很方便,但是随着你写的程序的增大,会越来越发现隐式声明变量带来的错误难以排查。如何才能避免隐式声明的变量呢?有两种方法。推荐方法一。
方法一,在过程的外面添加Option Explicit
代码
例5,在varTest过程的外面,添加Option Explicit
代码
|
|
由于c是隐式声明的变量,运行出现编译错误。
如果添加上变量c的声明,编译错误就会消失。修改后的代码如下:
|
|
以上程序的运行结果如下:
|
|
方法二,选择“工具”–“选项”,弹出选项对话框。选中“强制声明变量”,如下图
常量
与变量相对应的就是常量,值不可以变化的量就是常量。常量的值一旦声明后就不可以更改。
声明常量
声明常量的语法格式如下:
Const 常量名 As 数据类型=常量值
Const语句声明常量并设置其值。
常量名的命名要求和变量的命名要求一样,请参考变量命名要求。
可以将常量声明为以下数据类型之一: Boolean、 Byte、 Integer、 Long、 Currency、 Single、 Double、 Date、 String或Variant。数据类型详细将会在下一节介绍。
例6,声明常量a,b,pi,并在立即窗口打印出来
|
|
以上程序的运行结果如下:
|
|
可在一个语句中声明多个常量。 若要指定数据类型,必须为每个常量包括数据类型。
例7,在一个语句中声明常量a,b,pi,并在立即窗口打印出来
|
|
以上程序的运行结果如下:
|
|
声明常量还有可以省略数据类型。也就是As 数据类型
是可以省略的。
例8,在一个语句中声明常量a,b,pi(省略数据类型),并在立即窗口打印出来
|
|
以上程序的运行结果如下:
|
|
vba语言本身定义了很多常量,在以后的学习过程中会一一介绍。
转载请注明本网址。