第7章 宏
学习目标
⑴ 了解宏的基本概念。
⑵ 理解宏与Visual BASIC代码的转换方法,掌握宏创建及操作方法。
⑶ 掌握宏的运行与调试方法。
宏(Macro)是微软公司为其OFFICE软件包设计的一个特殊功能。微软软件设计师们为了让人们在使用软件工作时,避免重复相同的动作而设计出来的一种工具,它利用简单的语法,把常用的动作写成宏,当工作需要时,就可以直接利用事先编好的宏自动运行,来完成特定的任务,而不必重复进行相同的操作,以达到让用户文档中的一些任务自动化。本章学习宏的相关知识,包括宏的基本概念、宏的基本操作及Access中如何使用宏。
7.1 宏的基本概念
7.1.1宏的概念
宏是由一个或多个操作组成的集合,其中每个操作都实现特定的功能。当频繁地重复同一操作时,用户就可以通过创建宏来执行这些操作。例如:在窗体中创建一个命令按钮,当单击该命令按钮时,打开数据报表并打印报表。
在Access中,一共有53种基本宏操作,这些基本操作还可以组合成很多其他的“宏组”操作。在使用中,我们很少单独使用这个或那个基本宏命令,常常是将这些命令排成一组,按照顺序执行,以完成一种特定任务。这些命令可以通过窗体中控件的某个事件操作来实现,或在数据库的运行过程中自动来实现。
7.1.2常用宏操作
宏的操作是非常丰富的,如果只做一个小型的数据库,须使用 VBA编程,而用宏操作就可以轻易实现。宏的功能主要有:
◆ 显示和隐藏工具栏。
◆ 打开和关闭表、查询、窗体和报表。
◆ 执行报表的预览和打印操作以及报表中数据的发送。
◆ 设置窗体或报表中控件的值。
◆ 设置Access工作区中任意窗口的大小,并执行窗口移动、缩小、放大和保存等操作。
◆ 执行查询操作,以及数据的过滤、查。
◆ 为数据库设置一系列的操作,简化工作。
在宏操作中,有的操作是没有参数(如 Beep ),而有的操作必须指定参数。通常,按参数排列顺序来设置操作的参数是比较的方法,因为选择某一参数将决定该参数后面的参数的选择,常用的宏如表7-1所示。
表7-1 常用宏操作
宏操作 | 说 明 |
Beep | 通过计算机的扬声器发出嘟嘟声。 |
Close | 关闭指定的 Microsoft Access 窗口。如果没有指定窗口,则关闭活动窗口。 |
GoToControl | 把焦点移到打开的窗体、窗体数据表、表数据表、查询数据表中当前记录的特定字段或控件上。 |
Maximize | 放大活动窗口,使其充满 Microsoft Access 窗口。该操作可以使用户尽可能多地看到活动窗口中的对象。 |
Minimize | 将活动窗口缩小为 Microsoft Access 窗口底部的小标题栏。 |
MsgBox | 显示包含警告信息或其它信息的消息框。 |
OpenForm | 打开一个窗体,并通过选择窗体的数据输入与窗口方式,来限制窗体所显示的记录。 |
OpenReport | 在“设计”视图或打印预览中打开报表或立即打印报表。也可以限制需要在报表中打印的记录。 |
PrintOut | 打印打开数据库中的活动对象,也可以打印数据表、报表、窗体和模块。 |
Quit | 退出 Microsoft Access 。Quit 操作还可以指定在退出 Access 之前是否保存数据库对象。 |
RepaintObject | 完成指定数据库对象的屏幕更新。如果没有指定数据库对象,则对活动数据库对象进行更新。更新包括对象的所有控件的所有重新计算。 |
Restore | 将处于最大化或最小化的窗口恢复为原来的大小。 |
RunMacro | 运行宏。该宏可以在宏组中。 |
SetValue | 对 Microsoft Access 窗体、窗体数据表或报表上的字段、控件或属性的值进行设置。 |
StopMacro | 停止当前正在运行的宏。 |
7.1.3宏与Visual BASIC代码的转换
在Access中,所有的宏都对应着VBA中相应的程序代码,可以将宏操作转换为 Microsoft Visual Basic的事件过程或模块。这些事件过程或模块用 Visual Basic 代码执行与宏等价的操作。可以转换窗体或报表中的宏,也可以转换不附属于特定窗体或报表的全局宏。【例7.1】创建一个打开窗体的宏,然后将其转换成Visual BASIC代码。
操作步骤:
1 打开“教学数据库”窗口,单击“宏”对象。
2 单击“新建”按钮,打开如图7-1所示的宏设计窗口。
3 单击“操作”列的第一空行的下拉列表按钮,选择“OpenForm”操作。
4 单击“操作参数”区中的“表名称”行,单击右侧下拉按钮,从列表中选择“学生信息”,如图7-2所示。
5 单击“文件”菜单中“保存”按钮,弹出的“另存为”对话框中的“宏名称”文本框中输入“打开学生
信息表”,单击“确定”按钮保存。
6 关闭宏设计窗口,在数据库窗口宏对象中选择“打开学生信息表”宏,单击“工具”菜单,选择“宏”子菜单中的“将宏转换为Visual BASIC代码”,弹出如图7-3所示“转换宏”对话框,单击“确定”按钮。
7 转化结果如图7-4所示。
图7-1 access常见条件表达式操作列表
图7-2 操作参数
图7-3 转换宏对话框
图7-4 宏代码转换结果
7.2 创建宏
7.2.1 宏的设计窗口
创建宏或宏组,一般都需要在宏设计窗口中进行,因此我们先了解宏设计窗口的组成和掌握宏设计窗口的使用。
在数据库窗口中,单击左侧对象中的“宏”,如图7-5所示。
图7-5 宏对象
然后单击窗口上方的“新建”按钮,打开宏设计窗口,如图7-6所示。宏设计窗口可以分为上下两部分。上部分包括宏名、条件、操作和注释4列,其中宏名和条件列默认状态下不显示,可以通过单击工具栏上的宏名和条件按钮将两列显示出来。窗口下半部分是“操作参数区”,用于选择宏操作的对象参数。
图7-6 宏的设计窗口
宏设计窗口中“宏名”列中用户可以为每一个基本宏指定一个名称;“条件”列用以指定宏操作的条件;“操作”列可以为每个宏选择一个或多个宏操作;“注释”列中可以进行对宏操作作必要的说明,便于日后对宏操作的理解与维护。
在“操作参数区”中,可以对每个宏操作对象的参数进行设置,选择的操作不同,其对应的参数也不同。
宏设计窗口打开后会弹出一个工具栏,如图7-7所示。其各按钮和功能如下:
图7-7 宏设计工具栏
【宏名】 显示宏定义窗口中的“宏名”列。
【条件】 显示宏定义窗口中的“条件”列。
【插入行】 在宏定义表中设定的当前行的前面增加一空白行。
【删除行】 删除当前行。
【运行】 运行宏。
【单步】 单步运行宏。
【生成器】 设置宏的操作参数。
7.2.2 宏的创建
创建宏是比较简单的,在创建中不涉及到设计宏的代码,也没有太多的语法需要用户去掌握,用户只需在宏的操作设计列表中进行一些简单的选择,然后对其中的一些属性进行设置即可。下面用一个例子介绍宏的创建过程。
【例7.2】在教学数据库中创建一个功能为:打印预览报表的宏。
操作步骤:
1 打开“教学数据库”,单击“宏”对象。
2 单击“新建”按钮,打开如图7-1所示的宏设计窗口。
3 单击“操作”列的第一空行的下拉列表按钮,选择“OpenReport”操作。
4 单击“操作参数”区中的“报表名称”行,单击右侧下拉按钮,从列表中选择要打印浏览的报表名,如:“教师信息表”。在“视图”行选择“打印预览”。如图7-8所示。
图7-8 “打印报表“宏设计窗口
5 单击“文件”菜单中“保存”按钮,弹出的“另存为”对话框中的“宏名称”文本框中输入“浏览教师信息表”,单击“确定”按钮保存。
创建其他的宏操作都采用相同的方法,创建宏的过程包括指定宏名、选择宏操作、设置操作参数、为操作输入注释说明,创建条件宏还需要设置操作的条件。创建宏时需要注意以下几点:
◆ 一个宏名可以只有一个宏操作,也可以包含多个宏操作。
◆ 参数设置时一般按照其排列的顺序进行,因为某一参数将决定该参数后面的参数。
在宏的设计过程中,也可以将某些对象(如窗体、报表及它们的控件对象等)拖到“宏”设计窗口的操作行,快速创建一个指定数据库对象上执行操作的宏。
7.2.3 宏组的创建
对于一个复杂的操作过程,可以将多个相关宏操作组织在一起构造宏组,不需要对单个追踪。创建宏组时,将相关联的宏操作一一列出,然后给该组宏操作起个名称即可,创建方法如下:
【例7.3】创建一个宏组,其中包含3个宏操作,实现的功能是先执行Beep,让计算机发出“嘟嘟”声;然后打开教师信息表;最后弹出一个信息提示框。
操作步骤:
1 打开“教学数据库”,单击“宏”对象。
2 单击“新建”按钮,打开宏设计窗口。
3 单击宏设计工具栏中的“宏名”按钮,宏设计窗口显示“宏名”列。
4 单击“操作”列的第一空行的下拉列表按钮,选择“Beep”操作。
5 单击“操作”列的第二行的下拉列表按钮,选择“OpenTable”操作。
6 单击“操作参数”区中的“表名称”行,单击右侧下拉按钮,从列表中选择“教师信息表”。如图7-9所示
图7-9 宏组设计窗口。
7 单击“操作”列的第三行的下拉列表按钮,选择“MsgBox”操作。
8 单击“文件”菜单中“保存”按钮,弹出的“另存为”对话框中的“宏名称”文本框中输入“宏组”,单
击“确定”按钮保存。
保存宏组时,指定的名字是宏组的名字,宏组的命名方法与其他数据库对象相同,这个名字也是显示在数据库窗体中的宏和宏组列表中的名字。
7.2.4 创建条件操作宏
在数据库的操作中,当有时需要根据指定的条件来完成一个或多个宏操作,可以使用条件控制宏操作。创建带有条件的宏操作方法如下:
1 新建宏,打开宏设计窗口;
2 单击“宏设计”工具栏中的“条件”按钮,在设计窗口中显示条件列;
3 设置宏操作,在对应的宏操作条件列中编辑条件。
宏的“条件”是逻辑表达式,返回的值只能是“真”Ture或“假”False。运行时将根据条件结果的“真”或“假”,决定是否执行或如可执行宏操作。在输入条件表达式时,可能要引用窗体或报表上的控件值,其语法为:
Forms![窗体名]![控件名] 或 [Forms] ![窗体名]![控件名]
Reports![窗体名]![控件名] 或 [Reports] ![窗体名]![控件名]
【例7.4】创建一个带有条件的宏,用于验证用户输入的密码是否正确(密码为123),如果正确,则打开“教师信息表”,如果不正确,则提示出错信息。
该题中需要先建立一个用户输入密码的窗体,具体操作步骤如下:
1 打开“教学数据库”,单击“窗体”对象。单击“新建”按钮,打开窗体设计窗口。设计一个如图7-10所示的“验证密码”窗体,并保存。其中窗体命名为“验证密码”,文本框命名为“密码框”;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论