VBA 中的过程和函数,与变量类似,也具有不同的作用域。根据声明位置和方式,有 3 种作用域:
- 模块作用域
- 工程作用域
- 全局作用域
1.模块作用域
在模块中,使用 Private 关键词声明的过程或函数,具备模块作用域,只能在当前模块中使用。
Private Sub Test()
End Sub
2.工程作用域
在模块中,顶部声明 Option Private Module
修饰语句,并且直接声明或使用 Public 关键词声明的过程或函数,具备工程作用域,在当前工程的所有模块中使用。
Option Private Module
Sub Test1()
End Sub
Public Sub Test2()
End Sub
以上例子中,Test1 过程和 Test2 过程均具备工程作用域。由于直接声明和使用关键词 Public
是等效的,因此可以省略 Public
关键词。
3.全局作用域
在模块中,直接声明或使用 Public 关键词声明的过程或函数,具备全局作用域。例如,
Sub Test1()
End Sub
Public Sub Test2()
End Sub
以上例子中,Test1 过程和 Test2 过程均具备全局作用域,可以在打开的任何一个工作簿中使用。
此外,它们还能直接在工作簿宏列表中执行。
![图片[1]-VBA 过程或函数作用域-一鱼](https://yiyu0.cn/wp-content/uploads/2025/01/20250122201048203-图片.png)
感谢您的来访,获取更多精彩文章请收藏本站。

供学习和研究使用,请在下载后24小时内删除
购买前可以联系作者确认资源信息,防止交易矛盾
© 版权声明
THE END
暂无评论内容