在Excel VBA上定义变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Excel VBA上定义变量相关的知识,希望对你有一定的参考价值。
亲爱,
我正在使用Excel VBA启动一个新项目,我想在系统初始化期间声明要加载的一些变量,但在使用过程中它可能会被更改。我该怎么做?
示例:加载系统时,变量RADIO必须等于“OFF”,但在使用过程中,用户会将此值更改为“ON”,甚至再次更改为“OFF”。
在系统在其他一些页面中使用时,将使用此信息(RADIO)。
我该怎么做?非常感谢
布鲁诺莉莉
就像蒂姆·威廉姆斯所说,你需要一个全局变量。最佳做法是在代码模块的声明块(第一行)中声明它。
要在代码模块中使用它:Private booRadio as Boolean
要在整个VBA项目中使用它,即所有模块,用户表单以及工作簿和工作表事件:Public booRadio as Boolean
当VBA启动时,所有布尔变量都被初始化为False(同样,所有Integer或Long初始化为0,String为“”等)。这可用于在系统启动后具有已知的初始状态。
或者 - 在代码评论中阅读更好,并且我感觉更健壮 - 您使用事件来初始化启动状态。例如。像ashleedawg所说,你可以使用workbook_open事件。在这种情况下,如果要在ThisWorkbook代码之外访问它,则需要使用Public语句对变量进行dacelared。
编辑:
将此代码复制到ThisWorkbook代码模块中:
Private Sub Workbook_Open()
booRadio = True
End Sub
这将使用事件Workbook_Open
在每次打开Excel文件时初始化变量,因为该事件会自动生成。
以上是关于在Excel VBA上定义变量的主要内容,如果未能解决你的问题,请参考以下文章