在 Visual Basic for Applications 中创建一个全局变量
Posted
技术标签:
【中文标题】在 Visual Basic for Applications 中创建一个全局变量【英文标题】:Make a global variable in Visual Basic for Applications 【发布时间】:2016-09-22 12:47:12 【问题描述】:在 VBA for Access 中,如何创建可以在任何地方访问和更改的全局变量?
【问题讨论】:
添加一个模块,在顶部public variablename as datatype_you_want
只是为了说明一个项目的代码行越多,应该在其中使用的 Public
变量就越少
【参考方案1】:
您可以通过在标准模块或预先声明的类模块(例如 Worksheet、UserForm 或 PreDeclared 类)中使用 Public
关键字声明变量来在全局范围内声明变量:
Public myVar As String
您还可以使用现已弃用但仍然有效的 Global
语法声明全局变量,其功能与 Public
相同
Global myVar As String
但请注意,使用Public
或Global
声明变量将使该变量在整个项目中都可以访问AND 到任何引用该项目的项目,即使您的项目受到保护,用户仍然可以从即时窗口查询变量。
如果您必须有一个在您的项目中可用的变量,但仅限于该项目,那么您应该在标准模块中声明该变量,并包含 Option Private Module
语句以使模块对项目私有,但它的变量只对项目公开。
Option Private Module
Public myVar As String
【讨论】:
是否有弃用global
以支持 public
的文档?以上是关于在 Visual Basic for Applications 中创建一个全局变量的主要内容,如果未能解决你的问题,请参考以下文章
如何将行传递给 Excel(Visual Basic for Applications)自定义函数?
已删除的部件:部件/xl/vbaProject.bin。(Visual Basic for Applications(VBA))
用EXCEL内嵌的Visual Basic for Application 编程,通过 USB-GPIB 控制器来驱动仪器34401A,并从34401A读取数据