预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共90页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第8章内容提要VBA(VisualBasicforApplication)是MicrosoftOffice系列软件的内置编程语言,其语法结构与VisualBasic编程语言互相兼容,采用的是面向对象的编程机制和可视化的编程环境。集合和对象 VBA中的应用程序是由许多对象组成的,如表、窗体、查询等。对象是帮助构造应用程序的元素,以特定的方式组织这些对象,就形成了应用程序。 数据库窗口把可供选择的对象排列在一起,形成不同的类。对象的属性、事件和方法方法 方法是系统事先设计好的,可以完成一定操作的特殊过程,是附属于对象的行为和动作。在需要使用的时候可以直接调用。 其调用格式为: 对象名.方法名 Access中除数据库的7个对象外,还提供一个重要的对象:DoCmd对象 除窗体、控件的SetFocus(获得控制焦点)方法外,用得最多得是DoCmd对象的一些方法。使用这些方法,可以在VBA中运行Access的操作。打开当前数据库中的“雇员”窗体 DoCmd.OpenForm"Employees" 在数据库窗口中选择“雇员”窗体DoCmd.SelectObjectacForm,"Employees",True 在数据库窗口中关闭“雇员”窗体 DoCmd.CloseacForm,“Employees”,acSaveYes 删除数据库中的“雇员”表 DoCmd.DeleteObject"Employees" 例8-1新建一个窗体并添加两个命令按钮,运行窗体后,单击第一个按钮,新式一个消息框;单击第二个按钮,退出当前窗体。(参照教材P191页)进入VBE编程环境 VBE窗口的组成 VBE窗口由工具栏、工程资源管理器窗口、 属性窗口、代码窗口和立即窗口组成。 在VBE环境中编写VBA代码 标准工具条工程窗口 -选择对象8-2-1常量、变量常量 在程序运行过程中,其值不会被改变的量称为常量。在VBA中有三类常量: 直接常量 如:10,20%,123.0,“AB”,“VBA程序设计”等 符号常量 系统常量 指VBA系统预先定义好的,用户可以直接引用的量。 如:acForm,acQuery,vbOk,vbRed符号常量 在程序中,某个常量多次被使用,则可以使用一个符号来代替该常量,这样不仅在书写上方便,而且有效地改进了程序的可读性和可维护性。 VBA中使用关键字Const声明符号常量。 其格式如下: Const常量名[类型符号]=常数表达式 如: ConstPI#=3.1415926变量是内存中的临时单元,存放在程序执行过程中产生的中间结果和最后输出结果。 在程序中使用变量,就要给变量定义名称及类型,即对变量进行声明。变量命名规则 变量名必须以字母或汉字开头,后可跟字母、汉字、数字或下划线组成(不能含有小数点和空格),长度不超过255个字符的字符串; 不能使用VBA中的关键字; VBA中不区分变量名的大小写; 变量名的最后一个字符可以是%、&、!、#、$等表示数据类型的声明符。8-2-2数据类型与变量的声明VBA的数据类型变量声明 用Dim|Static语句显式声明局部变量 格式:Dim变量名[AS类型] 或Dim变量名类型符 语句中的“As类型”子句是可选的。如果使用该子句,就可以定义变量的数据类型。未使用,默认变量的类型为变体型(Variant)。 例如:DimiAsinteger,s 表示声明了一个名为i的整型变量和一个名为s的变体型变量。关键字Dim或Static的区别: Dim声明:随过程的调用而分配存贮单元,每次调用都对变量初始化;过程体结束,变量的内容自动消失,存储单元释放。 Static声明:Static声明的变量,也称为静态变量。静态变量在程序运行过程中一直保留其值,即每次调用过程,变量保持原来的值。 隐式声明变量 未进行上述的声明而直接使用变量,称变量的隐式声明。采用隐式声明的变量都是变体型(Variant)。 注意: VBA中允许不事先声明而直接使用变量,可以通过语句OptionExplicit,来要求所使用的变量必须事先声明,否则VBA会发出警告信息。下面是一个简单的程序,其使用的变量a,b,Sum都没有事先定义。 PrivateSubForm_Click() Sum=0 a=10 b=20 Sum=a+b Print"Sum=";Sum EndSub声明而未赋值的变量的值为: 数值型变量初始化为0; 字符型变量为零长度字符串; 变体型变量初始化为Empty。 8-2-3运算符和表达式(教材P199页)例如:"123"+"456"结果"123456" "123"&"456"结果"123456" 使用上&与+的区别: 例如:"abcdef"&12345结果为"abcdef12345" "123"&456结果为"123456"