VBA数据类型

本文概述

  • 数值数据类型
  • 非数值数据类型
计算机无法区分数字(1、2、3, … )和字符串(a, b, c, … )。为了进行区分, 我们使用数据类型。
你分配给变量的数据类型将取决于你希望该变量保存的数据类型。
在VBA中, 有许多数据类型。我们将数据类型分为两个主要类别, 即数字和非数字数据类型。
下表显示了可以在VBA Excel中使用的所有可用数据类型。
数值数据类型
类型 存储 取值范围
Byte 1 byte 0至255
Integer 2 bytes -32, 768至32, 767
Long 4字节 -2, 147, 483, 648至2, 147, 483, 648
Single 4字节 -3.402823E + 38至-1.401298E-45(负值)1.401298E-45至3.402823E + 38(正值)。
Double 8 bytes -1.79769313486232e + 308为-4.94065645841247E-324为负值4.94065645841247E-324为1.79769313486232e + 308为正值。
Currency 8 bytes -922, 337, 203, 685, 477.5808至922, 337, 203, 685, 477.5807
Decimal 12 bytes +/- 79, 228, 162, 514, 264, 337, 593, 543, 950, 335(如果不使用小数点)+/- 7.9228162514264337593543950335(小数点后28位)
非数值数据类型
数据类型 使用的字节 取值范围
字符串(定长) 线长 1至65, 400个字符
String (variable length) 长度+ 10个字节 0至20亿个字符
Boolean 2字节 对或错
Date 8字节 100年1月1日至9999年12月31日
Object 4 bytes 任何嵌入式对象
Variant (numeric) 16 bytes 任何大到两倍的值
Variant (text) 长度+ 22个字节 与变长字符串相同
User-defined Varies 每个元素的范围与其数据类型的范围相同。
注意:如果未指定数据类型, 它将在VBA中自动将变量声明为变量。当你在代码中指定变量的数据类型时, 它会告诉VBA如何存储该变量以及必须为其分配多少空间。
例如, 如果你需要使用用于保存月份数的变量, 则可以使用Byte数据类型(可容纳0到255之间的值)。由于月份数不会超过12, 因此可以正常工作, 并且为此变量保留的内存更少。
【VBA数据类型】而且, 如果你需要一个变量来在Excel中存储行号, 则需要使用一种可以容纳最大1048756的数字的数据类型。因此, 最好使用Long数据类型。

    推荐阅读