第7章 模块与VBA编程基础

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
按钮上键盘按键时发生事件
ACCESS
对 象 名 称
事 件 动 作
动 作 说 明
BeforeUpdate AfterUpdate Enter
文本框内容更新前发生事件 文本框内容更新后发生事件 文本框获得输入焦点之前发生事件
文本框控件
GetFoucs
LostFoucs Change KeyPress
文本框获得输入焦点时发生事件
ACCESS
模块与VBA编程基础
Access数据库程序设计
ACCESS
Access的表、查询、窗体、报表和数据访问页不能相 互驱动和调用。使用模块和宏可以将数据库中所有对象 联系起来、统一管理,形成完整的数据库系统。 宏的局限性: 只能处理一些简单操作 对数据库对象的处理能力很弱(例如表,查询)
ACCESS
模块的基本概念
模块是Access的数据库中的一个重要对象。 模块是由VBA(VisualBasicforApplications)语言编写 的程序的集合。是以函数过程(Function)或子过程(Sub) 为单元的集合方式存储。 作为模块主要是为了多次调用,重用。
ACCESS
文本框失去焦点时发生事件 文本框内容更新时发生事件 文本框内键盘按键时发生事件
ACCESS
在窗体中有一个标签Label0,标题为"测试进行中";有一个命令 按钮Command1,事件代码如下:
Private Sub Command1_Click( ) Label0.Caption="标签" End Sub Private Sub Form_Load() Form.Caption="举例" Command1.Caption="移动" End Sub
ACCESS
ACCESS
标准模块
标准模块一般用于存放供其它Access数据库对象使用 的公共过程。 标准模块通常安排一些公共变量或过程供类模块里的过 程调用。在各个标准模块内部也可以定义私有变量和私 有过程仅供本模块内部使用。
标准模块中的公共变量和公共过程具有全局特性,其作 用范围在整个应用程序里,生命周期是伴随着应用程序 的运行而开始、关闭而结束。
ACCESS
数据类型
存储空间 (字节) 2 4 4
数据类型 Integer (整型) Long (长整型) Single (单精度型)
取值范围 -32,768 ~ 32,767 -2,147,483,648 ~ 2,147,483,647 负数:-3.402823E38~-1.401298E-45 正数:1.401298E-45~3.402823E38
5、Exit
启动窗体时,系统首先执行的事件过程是 A)Load B)Click C)Unload D)GotFocus
参考答案:A
ACCESS
因修改文本框中的数据而触发的事件是 参考答案:A A)Change B)Edit C)Getfocus D)LostFocus
默认值 0 0 0
负数:
Double (双精度型) 8
-1.79769313E308 ~-4.94065648E-324
正数:
4.94065648E-324 ~1.79769313E308
0
ACCESS
数据类型
存储空间 (字节)
数据类型
取值范围 -922337203685477.5808 ~ 922337203685477.5807 100年1月1日 ~ 9999年12月31日 任何对象引用 0~ 65,535
A
B
参考答案:D
C
D
ACCESS

窗体中有3个命令按钮,分别命名为Commandl、Command2和 Command3。当单击Cmmand1按钮时,Command2按钮变为可用, Command3按钮变为不可见。下列Command1的单击事件过程中,正 确的是 C)Private Sub Command1_Click() Command2.Enabled=True Command3.Visible=False End Sub D)Private Sub Command1_Click() Command2.Visible=True Command3.Enabled=False End Sub
ACCESS

在VBA的代码中,过程、变量及常量的名称有如下规定: (1)最长只能有255个字符。 (2)必须用字母或汉字开头。 (3)可以包含字母、数字或下划线字符“_”。 (4)不能包含标点符号或空格。 (5)不能是VisualBasic关键字。
关键字是那些在VisualBasic中用作语法的一部分的词, 包括预定义语句(如If和Loop)、函数(如Len和Abs) 和运算符(如Or和Mod)等等
A)Private Sub Command1_Click() Command2.Visible=True Command3.Visible=False End Sub B)Private Sub Command1_Click() Command2.Enabled=True Command3.Enabled=False End Sub
参考答案:C
ACCESS
窗体Caption属性的作用是 A)确定窗体的标题 B)确定窗体的名称 C)确定窗体的边界类型 D)确定窗体的字体
参考答案:A
ACCESS
发生在控件接收焦点之前的事件是 参考答案:A A)Enter 控件的事件先后顺序: 1、Enter B)Exit 2、GotFocus C)GotFocus 3、其他 D)LostFocus 4、LostFocus
ACCESS
3.日期型变量的值: 日期值用#括起来,如#2004/11/23# 4.Variant(变体)数据类型: 若未给变量指定数据类型,Access自动指定其为 Variant类型。 Variant可包含除定长String数据及用户定义类型之 外的任何种类的数据。也可包含Empty、Error、 Nothing及Null特殊值。
ACCESS
2.隐式声明 Dim x,y
‘x,y为变体Variant变量
问题:如何确定以上声明的x,y和NewVar类型呢?
ACCESS
数据类型
数据类型 Byte (字节型) Boolean (布尔型)
存储空间
(字节) 1 2
取值范围 0 ~ 255 True或False
默认值 0 False
ACCESS
Left:设置窗体内部最左端与空的容器最左边之间的距 离 Top:设置窗体内部最上端与它的容器最上端之间的距 离 Height:设置窗体的高度 Width:设置窗体的宽度
ACCESS
常见的对象事件
对 象 名 称 事 件 动 作 动 作 说 明 先 后 顺 序
Open Load 窗体 Click UnLoad Close
3.模块的分类
窗体类模块 类模块 报表类模块
自定义类模块
标准模块
ACCESS
类模块
窗体模块和报表模块就是类模块。 这类模块通常都含有事件过程。窗体模块和报表模 块中的过程可以调用标准模块中已经定义好的过程。 窗体模块和报表模块具有局部特性,其作用局限在所属 窗体或报表内部,而生命周期则是伴随着窗体的打开而 开始、关闭而结束。
ACCESS
属性和方法
属性和方法:描述了对象的性质和行为。 引用:对象名.属性或对象名.方法[参数名表] 对象的属性例:label0.caption=“学生成绩表” 对象的方法例:text1.setfocus DoCmd对象:有许多方法。 如Openform打开窗体,例如: – DoCmd.Openform “学生登记” RunMacro运行宏操作等,例如: – Docmd.RunMacro “mac1”
ACCESS
VBE 窗口
VBE 工具栏
工程窗口 代码窗口 属性窗口
Debug窗口
ACCESS
变量与常量
常量就是在应用程序的运行中可直接引用的实际值,其 值在程序运行中不会变化。 VBA有3种常量:直接常量、符号常量和系统常量 常量的定义和调用方法: Const Pi!=3.1415926
ACCESS
事件和事件过程
事件就是窗体、报表,以及他们中对象可以识别的动作。 常见的有: 窗体的单击:Form_Click 按钮的单击:按钮名_Click 文本框内容的改变:文本框_Change()
ACCESS
常用的属性名称
BackColor:设置对象中文本和图形的背景色 ForeColor:设置对象中文本和图形的前景色 Caption:设置窗体标题栏显示的文本 Font:设置窗体上的字形、字号等 FontSize等… Visible:设置窗体是被显示还是被隐藏 Enabled:设置一个对象是否对用户生成的事件的响
标签控件
DblClick MouseDown
ACCESS
对 象 名 称
事 件 动 作
动 作 说 明
Click
按钮单击时发生事件
DblClick 命令按钮控件
Enter GetFoucs
按钮双击时发生事件
按钮获得输入焦点之前发生事件 按钮获得输入焦点时发生事件
MouseDown
KeyPress
按钮上鼠标按下时发生事件
ACCESS
VBA声明变量有2种方式:
1.显示声明 Dim MyName As String Dim s1 As String*50 ‘说明定长字符串变量可存放50字符 Dim x As Integer 2条语句是等价的,%是类型说 或Dim x% 明符号。 可在同一行内声明多个变量。例如, Dim t1 As Boolean,D1 As Integer
VBA变量不区分大小写。
ACCESS
变量的声明
每一个变量都必须在其使用的过程中事先声明(为了指 定变量的数据类型和作用域)。
未声明的变量默认为Variant类型(变体型)。若要求 在使用变量前必须声明,可进行设置。
ACCESS
声明一个变量用Dim语句,它的语法格式如下: Dim 变量名 [As数据类型] 例如: • Dim Int_I As Integer – 定义了名字为 “Int_I”的整数型变量。 • Dim Date_Stu As Date – 定义了名字为“Date_Stu”的日期型变量。
‘Pi为符号常量,3.1415926为直接常量。
Text1.BackColor = vbBlue
‘vbBlue为系统常量。
ACCESS
变量
变量指程序运行时值会发生变化的数据(值和数据类型 的变化)。变量名可随意定义,但不能与VBA关键词冲 突,变量的值可按需变化。
变量必须先声明数据类型,然后才能使用。
默认值
Currency (货币型)
Date (日期型) Object (对象型) String (字符串) Variant (变体)
8
8 4 不定 不定
0
0 空 空号: 整型%、长整型&、单精度型!、双精度型# 例:10.33#;100% 2.布尔型(逻辑型)数据的值: 两种值:True和False 其他数值类型转换为布尔型时,0变成False,其他 值均为True。 布尔型转换为其他型时,False成为0,True成为-1。
窗体打开时发生事件 窗体加载时发生事件 窗体单击时发生事件 窗体卸载时发生事件 窗体关闭时发生事件
1 2 … N-1 N
ACCESS
对 象 名 称
事 件 动 作
动 作 说 明
报表
Open Close Click
报表打开时发生事件 报表关闭时发生事件 标签单击时发生事件 标签双击时发生事件 标签上鼠标按下时发生事件
ACCESS
1、在Access中,如果要处理具有复杂条件或循环结构 的操作,则应该使用的对象是 A)窗体 B)模块 C)宏 D)报表 参考答案:B
ACCESS
VBA程序设计基础
1.对象 在VBA程序设计时,界面上的所有事物都可以称为 对象。 每一个对象都有自己的属性、方法和事件。用户是 通过属性、方法和事件来处理对象的。 比分说:设置标签Lable1的文本颜色为红色。 Label1.ForeColor = vbRed 'vbRed为VBA内置的16进制常量
文本框内框changeaccess常用的象中文本和库形的背景色象中文本和库形的前景色示的文本窗体fontsizeenabled部最左端空的容器最左库部最上端的容器最上端之库窗体内与它height的高度窗体widt窗体access窗体窗体openopen生事件窗体打库生事件窗体loadload生事件窗体加库生事件窗体ckcl生事件窗体库生事件窗体unloadunload生事件窗体卸库生事件窗体卸n1n1closclos生事件窗体库生事件窗体openopen生事件closclos控件clckcl生事件dblclckdblclmousedownmousedown生事件access命令按库控件命令按库控件clckcl生事件dblclckdblclenterenter入焦点之前库生事件入焦点之前库生事件getfoucsgetfoucs生事件mousedownmousedown生事件keypreskeypres生事件access文本控件文本控件beforeupdatbeforeupdat文本容更新前库生事件框内文本容更新前库生事件框内afterupdatafterupdat文本容更新后库生事件框内文本容更新后库生事件框内enterenter文本入焦点之前库生事件入焦点之前库生事件getfoucsgetfoucs文本foucslosfoucs文本失去焦点库文本失去焦点库changechange文本容更新库生事件框内文本容更新库生事件框内keypreskeypres生事件框内文本生事件框内accesscommand1事件代库如下
相关文档
最新文档