3、VBA 编程基础(4)
时间:2025-04-21
时间:2025-04-21
含声明变量都为 Variant类型,而Variant 类型变量比大多数其他类型的变量需要更多的内存资源。如果显式地声明变量为指定的数据类型,则应用程序将更有效。显式声明所有变量减少了命名冲突以及拼写错误的发生率。
如果不想使Visual Basic 生成隐含声明,可以将OptionExplicit 语句放置于模块中所有的过程之前。这一个语句要求对模块中所有的变量做显式地声明。如果模块包含Option Explicit 语句,则当 Visual Basic 遇到一个先前未定义的变量或拼写错误,它会发生编译时间的错误。
可以设置 Visual Basic 程序环境中的某个选项,使得自动在所有新的模块中包含 Option Explicit 语句。 注意: 需显式地声明固定大小的数组与动态数组。
为自动化声明一个对象变量:当使用一个应用程序去控制另外一个应用程序的对象时,应该设置一个对于其他应用程序的类型库的引用。若设置一个引用,则可以根据它们最常指定的类型来声明对象变量。例如,如果是在 Microsoft Word 中,当对 Microsoft Excel类型库做一引用设置时,可以在 Microsoft Word 中声明 Worksheet类型的变量来表示 Microsoft Excel 中的Worksheet 对象。
如果使用其他的应用程序去控制 Microsoft Access 对象,在多数情况下,可以根据它们最常指定的类型来声明对象变量。也可以使用关键字 New 去自动生成一个对象的新实例。然而,可能要指示它是 Microsoft Access 对象。例如,当在 Microsoft Visual Basic里面声明一个对象变量去表示 Microsoft Access form 时,必须区别它是 Microsoft Access Form 对象或是 Visual Basic Form 对象。所以在声明变量的语句中必须要包含类型库的名称,如下面示例所示:
Dim frmOrders As New Access.Form
某些应用程序并不能识别特别的 Microsoft Access 对象类型。既使已经在这些应用程序中设置了一个对 Microsoft Access 类型库的引用,必须声明所有 Microsoft Access 对象变量为 Object 类型。不能使用 New 关键字去创建这个对象的新实例。下面的示例显示了不能识别 Microsoft Access 对象类型的应用程序,如何去声明一个变量用来表示 Microsoft Access Application 对象。然后应用程序创建一个 Application 对象的实例。
Dim appAccess As Object
Set appAccess = CreateObject(Access.Application)
11.3.4.2 声明常数
如果要声明一个常数,可以使用 Const 语句去声明,并且设置它的值;而在常数声明完之后,则不能加以更改或赋予新值。
在声明部分,可以在过程中或者在模块顶部声明常数。模块级别中的常数默认为私有的。若要声明一个公共模块级别常数,则可以在 Const 语句前加上 Public 这个关键字。也可以利用在 Const 语句前加上 Public 关键字来明确地声明一个私有的常数,使得我们可更容易地去读取并且解释代码。
下面的示例,声明了一个 Public 常数 conAge 为 Integer 类型,并且指定它的值 为34。
Public Const conAge As Integer = 34
常数可以声明成下列数据类型中的一种:Boolean、Byte、Integer、Long、Currency、Single、Double、Date、String 或 Variant。因为已经知道常数的值,所以可以指定 Const 语句中的数据类型。关于数据类型的详细信息。
可以在一个语句中声明数个常数。为了指定数据类型,必须将每一个常数的数据类型包含进来。在下面的语句中,常数 conAge 和conWage 被声明为 Integer 类型。
Const conAge As Integer = 34, conWage As Currency = 35000
11.3.4.3 声明数组
数组的声明方式和其他的变量是一样的,它可以使用 Dim、Static、Private 或 Public 语句来声明。标量变量(非数组)与数组变量的不同在于通常必须指定数组的大小。若数组的大小被指定的话,则它是个
上一篇:高级人才面试题库——九型人格.