Excel VBA 问题:如何定义全局变量?

如题
二楼的朋友,不太明白你所指的标准模块的意义。能多解释一下吗?

Excel VBA 定义全局变量的具体操作步骤如下:

1、首先我们打开电脑里的excel软件进入excel主界面。

2、然后我们鼠标右击下面的工作表(如sheet1),选择“查看代码”,就可以打开VBA编辑界面。

3、如图显示打开VBA编程界面。

4、接着就是在代码框里输入定义一个执行函数。

5、接着就是在代码框里输入全局变量,定义方式【Globlal 变量】,通过以上步骤即定义好了一个全局变量。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-10

public xx as yy

vb是这样的,vba应该也不会错吧。 

另外这个定义应该写在模块中。 

如图,点击右键选择插入模块,然后在模块中插入代码。

第2个回答  2010-08-10
无论在标准模块,或是表格、文档对象中写的代码,均可以在通用部分用Public 关键字来声明全局变量。
例如 Public a as Long,b as Long
这样声明的变量是项目级的全局变量,均可以在整个项目中使用。
不加Public关键字声明变量默认为Private,即只能在本模块(容器)中调用。

“标准模块”就是在工程项目窗口中点击右键--插入--模块,新建的模块,区别于类模块。Excel VBA中用户窗体、模块、类模块,Excle表对象、工作簿对象均可以作代码的容器。
第3个回答  推荐于2017-09-11
声明全局变量可以在文档任何位置(For循环、If判断内除外)。比如:
Option Explicit
Public a As String
Sub aa()
a = "public"
MsgBox a
End Sub
以上代码可执行。

--------------------------------
Option Explicit
Public a As String
Sub aa()
a = "public"
MsgBox a
Dim i As Single
For i = 1 To 6
Public b As Single
b = i
MsgBox b
Next
End Sub
以上代码提示:
编译错误:
Sub 或 Function 中的属性无效
以上。本回答被提问者采纳
第4个回答  2010-08-10
首先要清楚全局变量定义的地方,在EXCEL当中的标准模块中定义。定义格式为PUBLIC 变量名 as 变量类型。在各个工作表中所置的控件及对应的程序应分别在对应工作表中,而不是在标准模块中。祝你成功!
相似回答