VBA - 变量


变量是一个命名的内存位置,用于保存在脚本执行期间可以更改的值。以下是命名变量的基本规则。

  • 您必须使用字母作为第一个字符。

  • 名称中不能使用空格、句点 (.)、感叹号 (!) 或字符 @、&、$、#。

  • 名称长度不能超过 255 个字符。

  • 不能使用 Visual Basic 保留关键字作为变量名。

句法

在VBA中,您需要在使用变量之前声明它们。

Dim <<variable_name>> As <<variable_type>>

数据类型

VBA数据类型有很多,可分为两大类,即数值数据类型和非数值数据类型。

数字数据类型

下表显示了数值数据类型和允许的值范围。

类型 值范围
字节 0 至 255
整数 -32,768 至 32,767
长的 -2,147,483,648 至 2,147,483,648
单身的

-3.402823E+38 至 -1.401298E-45(负值)

1.401298E-45 到 3.402823E+38(正值)。

双倍的

-1.79769313486232e+308 至 -4.94065645841247E-324(负值)

正值从 4.94065645841247E-324 到 1.79769313486232e+308。

货币 -922,337,203,685,477.5808 至 922,337,203,685,477.5807
十进制

如果不使用小数,则为 +/- 79,228,162,514,264,337,593,543,950,335

+/- 7.9228162514264337593543950335(28 位小数)。

非数字数据类型

下表显示非数字数据类型和允许的值范围。

类型 值范围
字符串(固定长度) 1 到 65,400 个字符
字符串(可变长度) 0 到 20 亿个字符
日期 100年1月1日至9999年12月31日
布尔值 对或错
目的 任何嵌入对象
变体(数字) 任何大于 double 的值
变体(文本) 与变长字符串相同

例子

让我们创建一个按钮并将其命名为“Variables_demo”来演示变量的使用。

vba_02.jpg

Private Sub say_helloworld_Click()
   Dim password As String
   password = "Admin#1"

   Dim num As Integer
   num = 1234

   Dim BirthDay As Date
   BirthDay = DateValue("30 / 10 / 2020")

   MsgBox "Passowrd is " & password & Chr(10) & "Value of num is " &
      num & Chr(10) & "Value of Birthday is " & BirthDay
End Sub

输出

执行脚本后,输出将如以下屏幕截图所示。

vba_03.jpg