如果您的值在应用程序中从未改变,则可以定义一个命名常量,并使用它代替文字值。
您只能在模块或过程级别使用Const。这意味着变量的声明上下文必须是类,结构,模块,过程或块,并且不能是源文件,名称空间或接口。
Public Const GLOBAL_CONSTANT As String = "Project Version #1.000.000.001" Private Const MODULE_CONSTANT As String = "Something relevant to this Module" Public Sub ExampleDeclaration() Const SOME_CONSTANT As String = "Hello World" Const PI As Double = 3.141592653 End Sub
虽然指定常量类型被认为是一种很好的做法,但并非严格要求。不指定类型仍将导致正确的类型:
Public Const GLOBAL_CONSTANT = "Project Version #1.000.000.001" 'Still a string Public Sub ExampleDeclaration() Const SOME_CONSTANT = "Hello World" 'Still a string Const DERIVED_CONSTANT = SOME_CONSTANT 'DERIVED_CONSTANT is also a string Const VAR_CONSTANT As Variant = SOME_CONSTANT 'VAR_CONSTANT is Variant/String Const PI = 3.141592653 'Still a double Const DERIVED_PI = PI 'DERIVED_PI is also a double Const VAR_PI As Variant = PI 'VAR_PI is Variant/Double End Sub
请注意,这是特定于常量的,与不指定类型会导致Variant类型的变量形成对比。
虽然可以将常量显式声明为String,但是无法使用固定宽度的字符串语法将常量声明为字符串
'This is a valid 5 character string constant Const FOO As String = "ABCDE" 'This is not valid syntax for a 5 character string constant Const FOO As String * 5 = "ABCDE"