📜  VBA数据类型

📅  最后修改于: 2021-01-11 13:59:40             🧑  作者: Mango

VBA数据类型

计算机无法区分数字(1、2、3,…)和字符串(a,b,c,…)。为了进行区分,我们使用数据类型。

您分配给变量的数据类型将取决于您希望该变量保存的数据类型。

在VBA中,有许多数据类型。我们将数据类型分为两个主要类别,即数字和非数字数据类型。

下表显示了可以在VBA Excel中使用的所有可用数据类型。

数值数据类型

Type Storage Range of Values
Byte 1 byte 0 to 255
Integer 2 bytes -32,768 to 32,767
Long 4 bytes -2,147,483,648 to 2,147,483,648
Single 4 bytes -3.402823E+38 to -1.401298E-45 for negative values 1.401298E-45 to 3.402823E+38 for positive values.
Double 8 bytes -1.79769313486232e+308 to -4.94065645841247E-324 for negative values 4.94065645841247E-324 to 1.79769313486232e+308 for positive values.
Currency 8 bytes -922,337,203,685,477.5808 to 922,337,203,685,477.5807
Decimal 12 bytes +/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use +/- 7.9228162514264337593543950335 (28 decimal places)

非数值数据类型

Data Type Bytes Used Range of values
String (fixed-length) Length of string 1 to 65,400 characters
String (variable length) Length + 10 bytes 0 to 2 billion characters
Boolean 2 bytes True or False
Date 8 bytes January 1, 100 to December 31, 9999
Object 4 bytes Any embedded object
Variant (numeric) 16 bytes Any value as large as double
Variant (text) Length + 22 bytes Same as variable-length string
User-defined Varies The range of each element is the same as the range of its data type.

注意:如果未指定数据类型,它将在VBA中自动将变量声明为变量。

当您在代码中指定变量的数据类型时,它会告诉VBA如何存储该变量以及必须为其分配多少空间。

例如,如果您需要使用用于保存月份数的变量,则可以使用Byte数据类型(可容纳0到255之间的值)。由于月份数不会超过12,因此可以正常工作,并且为此变量保留的内存更少。

而且,如果您需要一个变量来在Excel中存储行号,则需要使用一种可以容纳最大1048756的数字的数据类型。因此,最好使用Long数据类型。