首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在VBA编译时有条件地设置Const

在VBA编译时有条件地设置Const
EN

Stack Overflow用户
提问于 2018-11-20 20:34:37
回答 1查看 1.2K关注 0票数 4

我想在编译时有条件地设置const变量的值。我以为我可以使用下面的vba编译器指令#If #Else等来实现这一点,但到目前为止没有成功:

代码语言:javascript
复制
#If Environ("username") = "myusername" Then
    Public Const ErrorHandling As Boolean = False
#Else
    Public Const ErrorHandling As Boolean = True
#End If

当我运行这段代码时,im会得到Environ变量未定义的错误。

像这样的事有可能吗?或者,我是否只需要将“ErrorHandling”变量设置为公共变量(而不是Const),并在代码初始化时设置它?

提前谢谢你,

cjk

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-20 20:54:52

只能在条件if语句中使用常量。要么在VBAProject属性中设置它,解释这里,要么在代码中设置。

代码语言:javascript
复制
Sub TestIt()
#Const Errorhandling = False

    #If Errorhandling Then
        Debug.Print "Error on"
    #Else
        Debug.Print "Error off"
    #End If

End Sub

您可以找到更多的文档这里和关于预定义常数的页面

更新:正如共产国际正确指出的那样,我的状态仅常量不是完全正确的,请参阅语言规范第5.6.16.2节

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53401097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档