本帖最后由 hwc2ycy 于 2014-4-8 23:20 编辑
在第11篇简单的讲了变量的声明及其类型,考虑到刚开始时,大家刚接触,对于变量如果讲太深的话,也不易理解。 从今天开始,我们再来对变量进行细细解剖。
一、声明 1.Dim语句 使用范围:过程,模块顶端 Dim语句可以放在过程(sub和Function)中以创建属于过程级别的变量,或者放在模块的顶部以创建模块级别的变量。
需要注意的是,当创建模块级别的变量时,声明语句必须放在模块的顶端(即第一个过程之上),否则会产生编译错误,如下图:
使用Dim声明的模块级别的变量在其声明的模块中的所有过程中都可以访问该变量,而过程级别的变量,只在过程内是可访问的。 示例1 :
如上图中模块级变量lCount,在demo1,demo2过程中均可访问。在demo1中修改了lCount变量的值可以一直保留,除非模块重新设置或重新启动。
示例2 :
上图中有过程demo1,demo2。如果该模块顶部有option explicit语句,则在执行demo2时会产生“变量未定义”的错误提示。因为在demo2过程中,并没有声明strMsg变量,同时在该模块的顶端也没有声明 strMsg变量。 如果该查获块顶部没有Option Explicit 语句,如果没有则demo1 执行时消息框中会显示www.excelpx.com提示信息。而demo2 执行时消息框中显示的是一片空白。为什么呢,因为在demo2 过程在执行时,会隐性的创建一个变量strMsg ,如下图: |