大家好,上节的实例中引出变量的概念,变量是用于保存程序运行过程中的临时保存的数据和对象。根据保存的数据的不同的类型,变量也就有不同的类型。
在使用变量时经常要声明变量的类型,下面我们就主要介绍VBA的基本数据类型,对于枚举型和用户自定义类型先作了解即可。
一、VBA基本数据类型
大部分基本数据类型,在EXCEL平时使用时也会了解到类似的,比如数值、日期/时间、文本、货币等等。那么VBA在这些基础上还增加了字节、布尔和变体数据等等。
1、字符串(String)
字符串是一个字符序列,类似于EXCEL中的文本,在VBA中字符串是包括在双引号内的(英文双引号),如果字符串双引号内长度为零,即“”就是空字符串。
2、整型(Integer)
整型数据的范围是-32768~32768之间的整数,优点是占用内存少,运算速度快,数值如果超出范围就需要用long长整型数据。
3、长整型(Long)
用来表示-2147483648 - 2147483647之间的整数。
4、单精度浮点数(Single)和双精度浮点数(Double)
一般用来表示带有小数部分的实数,一般用single,由于范围是用科学计数法表示的,这里就不列了。如果范围溢出就用双精度浮点型,双精度浮点型的范围更大一些。
5、货币型(Currency)
货币型数据类型在货币计算与定点计算中很有用,因为对精度要求比较高。
6、字节型(Byte)
字节型数据类型为数值型,用来保存0-255之间的整数,在存储二进制数据时很有用。
7、布尔型(Boolean)
布尔型数据用来表示逻辑值(true或是false),布尔型变量的值显示为True或False。
8、日期型(Date)
日期范围为100年1月1日至9999年12月31日,时间范围为0:00:00至23:59:59
9、变体型(Variant)
变体型数据时所有没有被声明为其他类型变量的数据类型,是一种特殊的数据类型。除了定长string数据和用户自定义类型外,可以包含任何种类的数据,可以可以包含empty、error、nothing和null等特殊值。
10、对象型(Object)
利用set语句,声明为对象型的变量可以赋值为任何对象的引用。
基本的VBA数据类型就以上这些,编写代码的过程中经常会用到。下面会简单介绍下枚举型和用户自定义类型,先只做了解即可。
二、枚举类型
当一个变量只有几种可能的值时,可以将其定义为枚举类型。枚举类型的定义需要放在模块和窗体的声明部分,其定义的个数如下:(代码中[ ]中的内容可以省略)
Public | Private] enum 类型名称
成员 [=常数表达式]
成员 [=常数表达式]
... ...
End enum
下面我们用星期来举例,定义一个名字为workdays的枚举类型
声明定义了枚举类型后,就可以声明该枚举类型的变量来使用。下面我声明变量day为新的枚举类型“workdays”。输入sub test 开始一个新的过程,用dim语句声明变量day为枚举类型workdays。
在给day赋值时,代码窗口就会自动列出枚举类型的成员。
三、用户自定义类型
在VBA中还可以使用Type语句来定义自己的数据类型,其格式如下:
Type 数据类型名
数据类型元素 AS 数据类型
数据类型元素 AS 数据类型
... ...
End Type
自定义的数据类型的定义必须放在模块的声明部分中,这些都先作了解。
本节VBA的数据类型就介绍这些,最主要的就是第一部分基本的数据类型,后期会常用到的基础内容。枚举型和自定义类型先了解即可。下节将会介绍变量和常量的相关知识。祝大家学习愉快。