内容正文:
数据库应用基础
ACCESS 2016
单元六 使用宏及VBA
目录页
01
OPTION
02
OPTION
03
OPTION
04
OPTION
任务一 创建宏
任务二 创建宏组
任务三 创建VBA程序
任务四 创建登录窗体
任务实施
技能拓展
2
01
OPTION
任务一 创建宏
任务实施
技能拓展
3
任务一 创建宏
问题导入
在使用查询时,可以通过参数查询提示用户输入查询条件后查询满足条件的记录,如何在窗体中实现该功能呢?
任务实施
技能拓展
任务一 创建宏
宏是Access数据库的一种对象,是一个或多个操作的集合。宏可以看成是一种简化的编程语言,可以通过调用宏来重复执行某种特定的功能,如打开或关闭窗体、预览或打印报表、设置窗体或报表中控件的值、执行查询等。
创建查找记录宏
任务与目标
任务实施
技能拓展
5
一、宏的类型
简单宏
简单宏是最基本的宏类型,由一个或多个简单操作组成,并按顺序逐条执行,直到操作完成。
宏组
宏组是一个窗口对象,由多个相关的宏组成,宏组中的每一个宏需要使用不同的宏名。宏组中的每一个宏都能够独立运行,且互不干扰。
条件宏
条件宏是通过条件表达式来控制宏的流程,只有当条件表达式为真时,宏操作才执行。
知识准备
01
02
03
任务实施
技能拓展
6
二、宏操作命令
Access 2010提供了80多个宏操作,常用的宏操作命令见表6-1。
知识准备
表6-1 常用宏操作命令
操作命令 说明
AddMenu 为窗体或报表添加自定义菜单栏
ApplyFilter 在表、窗体或报表中应用筛选、查询或SQL WHERE子句,可限制或排序来自表中的记录,或来自窗体、报表的基本表或查询中的记录
Beep 使计算机发出嘟嘟声
CancelEvent 取消一个事件
CloseWindow 关闭指定的窗口,如果无指定的窗口,则关闭激活的窗口
FindNextRecord 查找符合最近的FindRecord操作或“查找”对话框中指定条件的下一条记录
FindRecord 查找符合条件的第一条或下一条记录
GoToControl 将焦点移到激活数据表或窗体上指定的字段控件上
GoToPage 将焦点移到激活窗体指定页的第一个控件上
GoToRecord 将表、窗体或查询结果集中的指定记录变为当前记录
MaximizeWindows 最大化激活窗口
MinimizeWindows 最小化激活窗口
MoveSize 移动并调整激活窗口
任务实施
技能拓展
7
二、宏操作命令
知识准备
表6-1 常用宏操作命令
操作命令 说明
MessageBox 显示含有警告或提示信息的消息框
OnError 定义错误处理行为
OpenForm 打开窗体
OpenQuery 打开选择查询或交叉表查询,或执行动作查询
OpenReport 打开报表
OpenTable 打开数据表
QuitAccess 退出Access
RemoveAllTempVars 删除所有临时变量
RemoveTempVar 删除一个临时变量
Requery 在激活的对象上实施指定控件的重新查询
RestoreWindow 还原窗口至原来的大小
RunCode 执行VBA Function过程
RunMenuCommand 执行Access菜单命令
任务实施
技能拓展
8
二、宏操作命令
知识准备
表6-1 常用宏操作命令
操作命令 说明
RunMacro 执行一个宏
SearchForRecord 基于某个条件在对象中搜索记录
SelectObject 选择指定的数据库对象
SetMenuItem 为激活窗口设置自定义菜单上菜单项的状态(启用或禁用,选中或不选中)
SetProperty 设置控件属性
SetTempVar 创建临时变量并设置为给定值
ShowAllRecords 从激活的表、查询或窗体中移去所有已应用的筛选,即显示所有记录
StopAllMacros 终止所有正在执行的宏
StopMacro 终止当前正在执行的宏
任务实施
技能拓展
9
(1)创建“商品进货明细”窗体,如图6-1所示。窗体的“允许添加”和“允许删除”属性均设置为“否”,窗体的“允许编辑”属性要使用默认值“是”,这样才能在用于查询的“商品编码”文本框中输入内容。但数据表的字段控件不允许修改,因此将8个字段控件的“是否锁定”属性设置为“是”。
创建宏
例如,在“进销存”数据库中创建“商品进货明细”窗体和“商品销售明细”窗体,用于查询商品的进货和销售记录。窗体中包含一个未绑定的“商品编码”文本框和“查询”按钮(名称为“query”),当用户在文本框中输入某一商品编码