EXCEL VBA中变量的作用域 工程级变量使用注意小点

2019-04-13 22:04发布

** 标题过程级,模块级,工程级变量**

  1. 一张图说明具体的区别
    作用域不同,存放位置,声明的方式不同
    在这里插入图片描述
  2. 举例1
    在这里插入图片描述 结果只显示工程级,模块级,模块级变量,过程级变量只能在过程里引用
  3. 举例2
    新建模块2,复制以上代码,运行主程序过程,结果只显示工程级变量,说明模块级变量不可跨模块。
  4. 注意:过程级变量引用时,会默认上次的值,当作为判断条件时,应该在主程序里设置默认值
    工程级变量 a
    public a as boolean
    自己模块的一个函数cancelyesorno()函数用于判断是否取消座位 是为 true 否为false
    sub 主程序()
    a = false
    call cancelyesorno
    … end sub
    因为每次都要判断 所以会记住上次运行的值 影响判断 可以在主程序里运行前先赋予false
《EXCEL VBA 程序开发自学宝典(第三版) 》 罗刚军