VBA中的数据类型
在定义程序中的变量或常量时,需要设定各变量或常量的数据类型。设定数据类型后,程序在运行时可以节省内存空间,优化运行性能。VBA的数据类型与其他编程语言的数据类型相似,甚至个别是相同的,详细说明如下表所示。
在编程中给变量命名时,最好养成一种良好的命名习惯,即使没有看到变量的定义,从变量名称上也可以看出变量的类型,增加程序的可读性。通常情况下,沿用如下表所示的短前缀或长前缀命名变量。
在定义变量的数据类型时,除了用数据类型名称外,还可以用类型声明字符。例如,语句“Dim sName As String”,等同于“Dim sName$”。各数据类型的类型声明字符如下表所示。
变量应用示例:
Sub Sample1()
'*********************
'数据类型简要示例
'*********************
Dim sName As String '定义变量为字符型
Dim iCount As Integer '定义变量为整型
Dim lNum As Long '定义变量为长整型
Dim DtBirthday As Date '定义变量为日期型
sName = "张三丰" '给字符型变量赋值“张三丰”
iCount = 1 '给整型变量赋值“1”
lNum = 123456789 '给长整型变量赋值“123456789”
DtBirthday = "1981-9-5" '给日期型变量赋值“1981-9-5”
End Sub
VBA中的变量和常量
(1)常量:用于保存固定数据,在声明常量时,直接赋予值,在程序中可以引用此常量,但不能再改变或赋予新值。在VBA中,用Const关键字声明常量,例如:
Sub Sample2()
'*********************
'常量声明简要示例
'*********************
Const initCount = 3333 '定义常量initCount并赋予数值
Const sName As String = "李大开"
Dim iCount As Integer '定义常规变量
MsgBox sName '显示常量的值
iCount = initCount + 100 '将常量initCount的数值加上100再赋予常规变量iCount
End Sub
(2)变量:用于保存临时数据,在程序执行过程中可以随时被赋予新值或清空。
声明变量的语法是:Dim VarName as Type
-
- Dim是关键字,声明变量时必须写在最前面。
- VarName是变量的名称,即标识字符,沿用标识字符的命名规则。
- As是关键字,声明变量时必不可少。
- Type代表声明变量的数据类型。
声明变量可以单独一行,或多个变量在一行内声明,例如:
Dim sName As String
dim iCount as Integer ,DtBirthday as Date
(3)常量和变量的有效范围:即常量和变量在VBA程序中的作用范围。有Public、Private、Static三种关键字声明不同的常量和变量作用范围。
-
- Public:在模块中用此关键字声明的变量可以作用于一个工作簿内的所有过程、函数、模块、窗体等。这样声明的变量或常量也称为全局变量或全局常量。
- Private:用此关键字声明的变量只能作用于变量所在的模块内,这种变量或常量被称为私有变量或私有常量。
- Static:声明的变量或常量一直都保留数据,不允许系统或人为地对其随意赋值,直到模块被重新启动或复位变量,这种变量或常量被称为静态变量或静态常量。