若在一个语句中声明好几个变量,则必须包含每一个变量的数据类型。变量在声明时若少了数据类型,则会自动地声明为Variant 。
Dim x As Integer, y As Integer, z As Integer
在下列的语句中,x 与 y 都被指定成 Variant 数据类型,只有 z 被指定成 String 数据类型。
Dim x, y As Integer,Z As String
如果声明一个数组变量,则必须包含圆括号,但下标则是可选的。下列的语句中定义了一个动态数组 myArray。
Dim myArray()
11.3.2 有效地利用数据语法
表11-1 列出VBA 所支持的数据类型,以及存储空间的大小与范围。
注意:
任何数据类型的数组都需要 20 个字节的内存空间,加上每一数组维数占 4 个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。例如,以 4 个 2 字节的Integer 数据元所组成的一维数组中的数据,占 8个字节。这 8 个字节加上额外的 24 个字节,使得这个数组所需总内存空间为 32 个字节。包含一数组的 Variant 比单独的一个数组需要多 12 个字节。
注意:
使用 StrConv 函数把字符串数据从一种类型转换为另一种类型。
除非有其他的指定,否则未声明变量会被指定成 Variant 数据类型。这个数据类型可使写程序变得较容易,但它并不总是使用中最有效率的数据类型。
若有下列情形时必须考虑使用其他的数据类型:
程序非常大并且使用很多变量。
程序的执行速度必须尽可能得快。
将数据直接写到随机存储文件中。
除了 Variant 之外,支持的数据类型包括 Byte、Boolean、 Integer、Long、Single、Double、Currency、Decimal、Date、Object 以及 String。可使用 Dim 语句去声明一个指定类型的变量,例如:
Dim X As Integer
上述语句声明变量 X 是一个整型,其范围介于-32,768~32,767 之间。如果试着去设置超出此范围的数值给 X ,则会有错误发生。如果试着去指定一个分数给 X,则此分数会自动四舍五入。例如:
X = 32768 ' 产生错误。 X = 5.9 ' 设置 x = 6。
11.3.3 Visual Basic 的命名规则
当在 Visual Basic 的模块中为过程、常数、变量以及参数命名时,可以使用下列的规则:
第一个字符必须使用英文字母。
不能在名称中使用空格、句点(.)、惊叹号(!)、或 @、&、 $,# 等字符。
名称的长度不可以超过 255 个字符。
通常,使用的名称不能与 Visual Basic 本身的 Function 过程、语句以及方法的名称相同。必须退出使用与程序语言的关键字相同的名称。若所使用的内在语言函数,语句或方法与所指定的名称相冲突,则必须显示地识别它。常规会将内建函数,语句或方法的名称之前加上关联的类型库的名称。例如,如果有一个名为 Left 的变量,则只能用 VBA.Left 来调用 Left 函数。










