在 Excel 中使用 VBA 变量、数据类型和声明 VBA 常量
变量几乎用于所有计算机程序,VBA 也不例外。在过程开头声明变量是一个好习惯。虽然不是必须的,但它有助于识别内容的性质(文本、数据、数字等)。
VBA 变量
变量是存储在计算机内存或存储系统中的特定值。稍后,您可以在代码中使用该值并执行。计算机将从系统中获取该值并显示在输出中。每个 Excel VBA 变量类型都必须有一个名称。
要在 VBA 中为变量命名,您需要遵循以下规则。
- 必须少于 255 个字符
- 不允许有空格
- 不得以数字开头
- 不允许使用句点
以下是 VBA 中变量有效和无效名称的示例。
![]() |
![]() |
---|---|
My_Watch | My.Watch |
NewCar1 | 1_NewCar(不能以数字开头) |
EmployeeID | Employee ID(不允许空格) |
在 VBA 中,我们需要在使用变量之前通过分配名称和数据类型来声明它们。
在 VBA 中,变量要么是隐式声明,要么是显式声明。
- 隐式声明:以下是隐式声明变量的示例。
- label=guru99
- volume=4
- 显式声明:以下是显式声明变量的示例。您可以在语法中使用“Dim”关键字
- Dim Num As Integer
- Dim password As String
VBA 变量与其他编程语言没有区别。要在 VBA 中声明变量,您可以使用关键字 “Dim”。
VBA 变量语法,
要在 VBA 中声明变量,请键入 Dim,然后输入一个名称
Sub Exercise () Dim <name> End Sub
在执行变量之前,我们必须在 Excel 中记录一个 宏。要录制宏,请执行以下操作 –
步骤 1):录制宏 1
步骤 2):停止宏 1
步骤 3):打开宏编辑器,在 Macro1 中输入变量的代码
步骤 4):执行 Macro 1 的代码
示例,用于 VBA 变量
Sub Macro1() Dim Num As Integer Num = 99 MsgBox " Guru " & Num End Sub
运行此代码后,您将在工作表中获得以下输出。
Excel VBA 数据类型
计算机无法区分数字(1,2,3...)和字符串(a,b,c...)。为了进行区分,我们使用数据类型。
VBA 数据类型可分为两种
- 数字数据类型
类型 | 存储空间 | 值范围 |
---|---|---|
Byte | 1 字节 | 0 到 255 |
整数 | 2 字节 | -32,768 到 32,767 |
Long | 4 字节 | -2,147,483,648 到 2,147,483,648 |
单 | 4 字节 | 负值 -3.402823E+38 到 -1.401298E-45,正值 1.401298E-45 到 3.402823E+38。 |
Double | 8 字节 | 负值 -1.79769313486232e+308 到 -4.94065645841247E-324 正值 4.94065645841247E-324 到 1.79769313486232e+308。 |
货币 | 8 字节 | -922,337,203,685,477.5808 到 922,337,203,685,477.5807 |
Decimal | 12 字节 | +/- 79,228,162,514,264,337,593,543,950,335(不使用小数)+/- 7.9228162514264337593543950335(28 位小数) |
- 非数字数据类型
数据类型 | 使用的字节数 | 值范围 |
---|---|---|
字符串(固定长度) | 字符串长度 | 1 到 65,400 个字符 |
字符串(可变长度) | 长度 + 10 字节 | 0 到 20 亿个字符 |
布尔值 | 2 字节 | True 或 False |
Date | 8 字节 | 100 年 1 月 1 日到 9999 年 12 月 31 日 |
对象 | 4 字节 | 任何嵌入式对象 |
Variant(数字) | 16 字节 | 任何值,最大可达 Double |
Variant(文本) | 长度 + 22 字节 | 与可变长度字符串相同 |
在 VBA 中,如果未指定数据类型,它将自动将变量声明为 Variant。
让我们看一个如何在 VBA 中声明变量的示例。在此示例中,我们将声明三种类型的变量:字符串、加入日期和货币。
步骤 1) 就像在上一个教程中一样,我们将 commandButton1 插入到我们的 Excel 表格中。
步骤 2) 在下一步,右键单击按钮并选择“查看代码”。它将打开如下所示的代码窗口。
步骤 3) 在此步骤中,
- 通过点击保存按钮保存您的文件
- 然后点击同一个窗口中的 Excel 图标
返回 Excel 表格。
- 您可以看到设计模式已“开启”,并以绿色突出显示
步骤 4) 在单击 commandButton1 之前,关闭设计模式
步骤 5) 关闭设计模式后,您将单击 commandButton1。它将显示以下变量作为我们代码中声明范围的输出。
- 名称
- 加入日期
- 货币收入
VBA 中的常量
常量类似于变量,但您不能修改它。要声明 VBA 常量,您可以使用关键字 Const。
常量有两种类型,
- 应用程序提供的内置或固有常量。
- 符号或用户定义常量
您可以将作用域指定为默认的私有或公共。例如,
Public Const DaysInYear=365
Private Const Workdays=250
下载包含上述代码的 Excel 文件
摘要
- 变量是存储在计算机内存或存储系统中的特定值。
- 您可以在语法中使用 VBA Dim 类型关键字来显式声明变量
- VBA 数据类型可分为两种
- 数字数据类型
- 非数字数据类型
- 在 VBA 中,如果未指定数据类型。它将自动将变量声明为 Variant
- 常量类似于变量,但您不能修改它。要在 VBA 中声明常量,您可以使用关键字 Const。