VBA 变量入门教程:从声明到使用详解
时间:2026-05-26 | 作者:318050 | 阅读:0上一节我们聊了Excel VBA的一些基础概念,你可能已经看到了一些代码片段,感觉有点懵——这太正常了。从今天开始,我们才算真正推开编程世界的大门,系统性地学习VBA的语法。而这一切的起点,就是编程中最基础、也最核心的元素:变量。
简单来说,变量就是VBA里用来临时存放数据的“容器”。它的妙处在于“可变”——程序运行过程中,里面的数据可以随时被更新,然后参与到后续的各种计算和处理中去。
你可以把它想象成Excel里的一个单元格地址,比如A1。当你在公式里写“=A1+10”时,你引用的不是“A1”这个地址本身,而是它里面存放的那个数字。变量起的就是这个作用。
每个变量都有两个关键属性:名字和类型。
- 变量名:就是它的代号,方便你在代码里找到它、使用它。
- 变量类型:决定了这个“容器”能装什么“货”,是数字、文字,还是其他东西。
声明变量
想用变量?第一步得先“声明”它,也就是告诉VBA:“我要创建一个变量,它叫这个名字,用来存这种类型的数据。”
声明的标准格式长这样:
Dim [变量名] As [数据类型]
这里面的Dim和As是VBA的关键字,不能乱改:
Dim是声明语句的开头。As后面跟着的,就是你为变量指定的数据类型。
而[变量名]和[数据类型]则需要你自己来填:
[变量名]:你给变量起的独一无二的名字。[数据类型]:定义这个变量能装什么。
变量声明示例
举个例子,如果要记录员工的姓名和年龄,可以这样声明:
Dim name As String Dim age As Integer
这里,name和age是变量名。String表示文本类型,适合存姓名;Integer表示整数类型,正好用来存年龄。
变量命名规范
给变量起名字不是随心所欲的,VBA有一套硬性规则,违反了就会报错:
- 必须用英文字母开头。
- 不能包含空格、英文句点(
.)、感叹号(!)、@、&、$、#这些特殊符号。 - 总长度不能超过255个字符。
- 不能用VBA内置的关键字(比如
If、For、Sub)当变量名。
在遵守这些规则的前提下,强烈推荐使用驼峰命名法(CamelCase)。这是编程界的通用规范,能让你的代码看起来更专业、读起来更顺畅。
驼峰命名法的规则是:如果变量名由多个单词组成,第一个单词全部小写,后面每个单词的首字母大写。比如employeeName(员工姓名)、totalSalary(总薪水)、isManager(是否是经理)。看起来就像骆驼的背,所以叫“驼峰”。
变量数据类型
选对数据类型,这事儿很重要。它不仅关系到程序反赌不快、占内存多不多,更是代码逻辑严谨性的第一道防线。一旦类型定下来,如果你试图往里面塞一个不匹配的数据,VBA会立刻报错,帮你把很多低级错误扼杀在摇篮里。
VBA的数据类型主要分三大类:数值型、非数值型和通用型。
数值类型
专门用来存数字的,不同的子类型对应不同的数值范围和精度:
| 类型 | 说明 | 取值范围 |
|---|---|---|
| Byte | 无符号字节型 | 0 ~ 255 |
| Integer | 16位有符号整数 | -32,768 ~ 32,767 |
| Long | 32位有符号长整数 | -2,147,483,648 ~ 2,147,483,647 |
| Single | 单精度浮点数 | 负数:-3.402823E38 ~ -1.401298E-45 正数:1.401298E-45 ~ 3.402823E38 |
| Double | 双精度浮点数 | 负数:-1.79769313486231E308 ~ -4.94065645841247E-324 正数:4.94065645841247E-324 ~ 1.79769313486231E308 |
| Currency | 高精度货币型 | -922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 |
| Decimal | 定点十进制数 | 未缩放:±79,228,162,514,264,337,593,543,950,335 缩放后:±7.9228162514264337593543950335 |
非数值类型
这类数据通常不直接参与数学运算,但在业务逻辑中扮演着关键角色:
| 类型 | 说明 | 取值范围 |
|---|---|---|
| String | 变长文本字符串 | 0 ~ 2,147,483,647 字符(约20亿) |
| Boolean | 布尔逻辑值 | `True` 或 `False` |
| Date | 日期时间类型 | 时间:00:00:00 ~ 23:59:59 日期:公元100年1月1日 ~ 9999年12月31日 |
| Object | 对象引用类型 | 可指向任意 VBA 或 Excel 对象(如 Worksheet、Range、Workbook 等) |
通用类型
这是VBA里的“万金油”,灵活性最高:
| 类型 | 说明 | 取值范围 |
|---|---|---|
| Variant | 万能数据类型 | 无固定限制,可存储除定长字符串外的所有类型 |
这里有个重要的提醒:虽然Variant用起来很方便,不用事先指定类型,但它会消耗更多内存,并且可能拖慢程序速度。所以,一个最佳实践是:只要你能明确知道变量要存什么类型的数据,就老老实实地声明具体类型;只有在数据类型真的不确定或者需要动态变化时,才考虑使用Variant。
给变量赋值
声明了变量,相当于准备好了“容器”。接下来,就该往里面“装东西”了,也就是赋值。
赋值的语法非常简单:
[变量名] = [值]
核心就是这个等号=。左边是已经声明好的变量名,右边是你要放进去的值。这个过程,本质上就是把右边的数据,“搬进”左边变量所代表的那块内存空间里。
右边的[值]可以是两种形式:
- 直接写出来的常量:比如数字
42、文本"李四"、逻辑值True。 - 另一个变量:比如
name = fullName(前提是fullName已经声明,并且类型兼容)。
一旦赋值完成,这个变量就可以在它的作用域内被反复使用了,无论是拿去计算、输出结果,还是做条件判断,都离不开它。
实际赋值示例
Dim name As String
name = "张三"
Range("A1") = name
这段代码干了三件事:
① 声明一个String类型的变量,名字叫name。
② 把文本"张三"赋给这个变量。
③ 把变量name里当前存的值(也就是“张三”),写到Excel工作表的A1单元格里。
小结
好了,今天我们系统地梳理了VBA编程的基石——变量。我们弄明白了它的本质、命名规矩、丰富的数据类型以及如何给它赋值。变量的核心价值就在于它的“可变性”,这让我们的程序能够动态地处理数据,极大地提升了开发效率和代码的复用能力。
使用一个变量的标准三步走,请你记住:
- 声明变量(用
Dim开头); - 指定明确的数据类型(这是写出健壮、高效代码的关键);
- 执行赋值(用
=号,让数据流动起来)。
来源:整理自互联网
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- 如何开启Yo交友附近动态功能
- 时间:2026-05-26
-
- SumatraPDF如何打开与填写PDF表单文件
- 时间:2026-05-26
-
- 四海公考历年真题解析与题库获取方法全攻略
- 时间:2026-05-26
-
- 踢踏爵士四座塔楼技能书位置全收集攻略
- 时间:2026-05-26
-
- 踢踏爵士冒险四座塔楼技能书位置获取攻略
- 时间:2026-05-26
-
- 踢踏爵士冒险四座塔楼技能书2获取位置攻略
- 时间:2026-05-26
-
- 踢踏爵士冒险四座塔楼技能书一获取位置详解
- 时间:2026-05-26
-
- 踢踏爵士冒险四座塔楼卷轴一获取位置详解
- 时间:2026-05-26
精选合集
更多大家都在玩
大家都在看
更多-
- 原神妮露角色强度解析与培养攻略
- 时间:2026-05-26
-
- 王者荣耀世界游戏设置优化指南
- 时间:2026-05-26
-
- 三角洲行动M7战斗步枪最佳改装方案推荐
- 时间:2026-05-26
-
- 卡厄思梦境卢克卡牌技能效果详解
- 时间:2026-05-26
-
- 异环无名医院快速通关攻略与实用技巧
- 时间:2026-05-26
-
- 王者荣耀世界体力高效规划指南与技巧
- 时间:2026-05-26
-
- 烹饪青菜时,以下哪种做法更能保持营养和口感 蚂蚁庄园今日答案5.25
- 时间:2026-05-26
-
- 光遇5月26日每日任务怎么做 图文攻略详解
- 时间:2026-05-26
