vba 全局变量_VBA中变量的种类极其声明方式!

本文介绍了VBA中的变量种类,包括过程级、模块级和全局变量,并详细阐述了各种变量的声明方式。理解变量的作用范围有助于提高代码效率。通过Option Explicit强制声明变量,可以避免未声明变量导致的错误。动手实践,深入掌握VBA变量的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的目标:让中国的大学生走出校门的那一刻就已经具备这些Office技能,让职场人士能高效使用Office为其服务。支持鹏哥,也为自己加油!

昨天我们讲了变量,那到底VBA中的变量根据其作用范围不同有可以分为哪些呢?都是如何声明其数据类型的?

变量是一个指定的内存位置,用于保存脚本执行过程中可以更改的值。变量声明是指在VBA代码中使用变量之前,声明变量的数据类型。声明数据类型后,可以在计算机内建立一个指定的存储位置,这样在运行代码时程序就会很快,内存利用效率很高,否则,计算机还要耗用很大的内存来判断其数值类型,运行会比较慢。

在VBA中如果要强制声明变量可以通过以下方式:

9ad4121efe2fc46f7ea4ba264b0fd928.png

9c375c27fb8af74a24fde12d79560625.png

到工具、选项、编辑器下面勾选要求变量声明,勾选后代码窗口的顶头就会显示:Option Explicit

fea9c77c52e98ba9284ae1d25f84d6d2.png

或者我们不用去选项里勾选,直接在输入代码时最顶头输入Option Explicit也可以强制声明变量。

如果强制声明变量后,在VBA代码中输入变量却未声明时,系统就会弹框显示:

a9b8a3c2b74790d02ca2c934650e08a7.png

理解了上面的内容以后我们就来具体的学学在VBA代码中到底怎么声明变量。

根据使用变量的范围不同,声明的方式也有所不同。

第一种:过程级变量

过程级变量只在变量所在的过程中有效。

声明代码:

Dim 变量名 As 数值类型

举例:

Sub test()Dim M1 As Integer ' 声明变量M1为整型M1 = 100Range("a1").Value = M1 ' 把M1的值赋给A1单元格End Sub

aa2efd315c8f2b15a48f094ce9aad235.png

当我们再写一段代码,直接使用M1时就会出现如上的提醒,因为两个过程里的M1是独立的。

第二种:模块级变量

在同一个模块内通用的变量。

声明代码:

Dim 变量名 As 数值类型

Private 变量名 As 数值类型

247200644a34da71181971c23b78f480.png

Option ExplicitDim m1 As IntegerPrivate m2 As Integer'过程1:Sub test1()m1 = 100m2 = 200Range("a1").Value = m1 + m2End Sub'过程2:Sub test2()m1 = 100m2 = 200Range("a1").Value = m2 - m1End Sub

与过程级变量声明的不同方式在于,写过程前先声明。

第三种:全局变量

在该工程内通用的变量。

声明代码:

Public 变量名 As 数值类型

比如:我们在模块3中声明一个全局变量X1

2c88fdc9650f6e8edca3f5845785b819.png

然后我们到模块2中试试引用这个变量,

08e0809b2939315d0662afb63f5a5506.png

完全可以引用。

今天主要是分享了变量根据作用范围的不同分为三种类型极其声明方式,动手试试才有体会。

本节的分享就到这里,鹏哥祝大家每天都有进步。

从基础操作到VBA,

两杯咖啡的钱,

换取一份如此详细的Excel视频资料,

你还在犹豫?

欲购从速,联系微信号:527240310

每天进步一点,每天提升一点!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值