vba中全局变量和局部变量的重要解析

 时间:2024-10-12 00:10:00

1、首先我们打开一个工作样表作为例子。

vba中全局变量和局部变量的重要解析

2、使用alt+f11组合快捷键打开vba编辑器,插入一个新的代码,在代码编辑框中输入以下代码:Option ExplicitPublic i As IntegerSub Test1()Dim s As IntegerMsgBox iMsgBox si = i + 1End SubSub Test2() MsgBox i MsgBox sEnd Sub

vba中全局变量和局部变量的重要解析

3、我们运行一下这两个过程,会发现对同一个变量得到的结果却是不一样的。运行test1,我们能够得到正确的过程结果,但是运行test2我们会得到错误变量未定义的结果。

vba中全局变量和局部变量的重要解析

4、分析一下代码,我们做了一个全局变量i,所以在test1和test2中,i变量都是定义过的,可以使用。而s则只在test1里做了局部变量声明,所以test1能够正常运行得到结果。

vba中全局变量和局部变量的重要解析

5、如果我们图简洁,我们直接将变量声明这个拳婊招稹语句删除掉,TEST2过程就可以正常的工作,但是这种方法在运行上会造成变量的混乱,尤其是在复杂代码中,未定义的变量会给不同的进程中的代码阅读造成混乱。因为未给s赋值也未定义,所以s实际上是个空值。

vba中全局变量和局部变量的重要解析

6、如果给s下了个定义,虽然msgbox不会显示具体的数值,但是s的类型会被vba所确认,其类型会被正确的显示出来。

vba中全局变量和局部变量的重要解析

7、经过以上步骤的解说,可以看出变量声明的重要性,合理的确定变量是全局还是局部,是非常重要的选择。当然更好的办法是将代码封装为不同的模块,并相互调用,可以避免变量的混乱。

vba中全局变量和局部变量的重要解析
  • 如何理解Excel VBA的With语句
  • 通过VBA设置excel的最后一行的第n列单元格的值
  • 如何在Excel VBA中计算数组的大小
  • 怎样使用VBA用图像控件打造动态按钮?
  • 如何设置Excel始终以默认编码保存网页
  • 热门搜索
    六一儿童节手抄报图片 中秋节手抄报简单 关于童年的手抄报 建国手抄报内容大全 关爱残疾人手抄报 关于艾滋病的手抄报 七彩童年手抄报 感恩手抄报资料 关于地震的手抄报图片 五一的手抄报