常量代表不会改变的数值型或字符串值。可以用常量来增加 Visual Basic 代码的可读性,并且使代码更加容易维护。此外,使用固有常量还可以保证即使常量所代表的基础值在以后的 Microsoft Access 版本中被改变了也能使代码正常运行。
Microsoft Access 支持三种类型的常量:
通常,可能要在代码中反复使用相同的值,或者发现代码依赖于一些没有明显意义的数字。这种情况下,可以使用符号常量或用户定义的常量(可以使用具有意义的名称来代替数字或字符)来增加代码的可读性与可维护性。
如果使用 Const 语句创建了一个常量,就不能修改该常量的值,也不能为其指定新值。另外,也不允许创建与固有常量同名的常量。
下面的例子给出了使用 Const 语句来声明数值常量和字符串常量的几种方法:
Const conPI = 3.14159265 ' Pi equals this number.
Const conPI2 = conPI * 2 ' A constant used to create another.
Const conVersion = "Version 7.0" ' Declare a string constant.
除了用 Const 语句声明的常量之外,Microsoft Access 还自动声明了许多固有常量,并提供了对 Visual Basic for Applications (VBA) 常量和 ActiveX Data Objects (ADO) 常量的访问权限。还可以在其他引用对象库中使用常量。有关添加引用的详细信息,请参阅“设置对类型库的引用”。
所有的固有常量都可在宏或 Visual Basic 中使用。任何时候这些常量都是可用的。在函数、方法和属性的“帮助”主题中对用于其中的具体内置常量都有描述。
注意 可以用“对象浏览器”来查看所有可用对象库中的固有常量列表。
固有常量有两个字母前缀指明了定义该常量的对象库。来自 Microsoft Access 库的常量以“ac”打头;来自 ADO 库的常量以“ad”打头;而来自 Visual Basic 库的常量则以“vb”打头,例如:
注意 因为固有常量所代表的值在 Microsoft Access 的以后版本中可能改变,所以应该使用常量而不是常量的实际值。不过,可以通过在“对象浏览器”中选择常量或在“立即”窗口中键入“?constantname”来显示常量的实际值。
可以在任何允许使用符号常量或用户定义常量的地方,包括表达式中,使用固有常量。下面的示例显示如何使用固有常量 vbCurrency 来确定变量 varNum
是否是一个 Variant 型值,VarType 函数为其返回 6 (Currency):
Dim varNum As Variant
If VarType(varNum) = vbCurrency Then
Debug.Print "varNum contains Currency data."
Else
Debug.Print "varNum doesn't contain Currency data."
End If
在 Microsoft Access 的任何地方都可以使用系统定义的常量:True、False 和 Null。例如,可在以下的宏条件表达式中使用 True。当“雇员”窗体的 Visible 属性等于 True 时,就满足条件。
Forms!Employees.Visible = True
在 Microsoft Access 的任何地方都可以使用 Null。例如,可通过下面的表达式用 Null 来设置窗体控件的 DefaultValue 属性:
=Null