首页 百科知识 宏的创建方法

宏的创建方法

时间:2022-08-25 百科知识 版权反馈
【摘要】:执行宏组中的宏时,Access系统将按顺序执行“宏名”列中的宏所设置的操作以及紧跟在后面的“宏名”列为空的操作。运行宏时,系统会计算条件表达式,如果为True(真)就执行同行的操作命令,然后,Access将执行宏中所有其他“条件”列为空的操作,直到到达另一个表达式、宏名或宏的结尾为止。

6.2.2 宏的创建方法

用户可以创建一个宏,用以执行某个特定的操作。要创建宏,首先要进入宏设计视图,我们总是在宏设计视图中设计和编辑宏。

1.创建基本宏

利用宏设计视图创建宏有两种方法:一种是在窗口中的“操作”下拉列表框中选择宏操作;另一种方法是通过拖曳数据库对象添加宏操作。

利用设计视图设置宏操作的步骤如下。

(1)打开要创建宏的数据库窗口。

(2)单击“创建”功能区的“其他”工具组中的“宏”按钮,进入宏设计视图。

(3)在操作列设置宏操作,如图6-7所示。单击“操作”列中的单元格,其右侧出现一个下拉箭头。单击下拉箭头,打开宏操作下拉列表框,在此列出了Access的所有宏操作,在“操作”下拉列表框中选择一项操作,选定后将在设计视图的右下角显示此操作的功能。

img323

图6-7 操作列设置

(4)在宏中设置操作参数。在操作列选中一个宏操作后,就应该立即在操作参数区填写操作参数。几乎所有宏操作都有操作参数,如果你对参数不甚了解,那么按下功能键F1就可以看到该宏操作的详细帮助信息。填写操作参数应该遵循以下原则。

● 必须按参数排列顺序从前到后依次设置操作参数。因为前面参数的选择会影响或决定后面参数的选择。例如先填写“窗体名称”,再填写“视图”。

● 注意填写参数值的方法。当参数后面有下拉按钮时,应该在列表框中选择,例如选择“窗体名称”;当后面是表达式生成器时,既可以直接输入表达式,也可以进入表达式生成器,例如填写“Where条件”;当仅仅是个文本框时,就只能键盘输入了,例如填写“筛选名称”。

● 可以通过鼠标拖放的方法设置操作参数。可以把数据库对象拖放到操作列中,例如我们把某窗体从数据库窗体列表框用鼠标拖放到宏生成器的操作列,就会自动调用OpenForm操作,同时会自动填写操作参数;如果操作中有调用数据库对象名的参数,则可以将对象从“数据库”窗口拖放到参数框,从而设置参数及其对应的对象类型参数。

● 如果操作参数由运算符、字段名、控件名、函数名构成的表达式计算而来,必须在前面加等号(=),再写出对应的表达式来设置操作参数。例如“Where条件”中可以直接填写“[学号]="1003"”,也可以填写“="[学号]='100' & '3' "”,其中[学号]是窗体控件名;又如MsgBox操作的“消息”参数,不能直接填写“学号是[学号]”,而只能写成“=" '学号是' & [学号]"”。但是也有两个例外:SetValue的“表达式”参数和RunMacro的“重复”表达式不能用等号开头。

(5)填写注释。注释是写给开发者阅读的,用来辅助理解宏的作用。

(6)编辑宏。可以重复执行步骤(3)~(5),直到输入需要的所有宏操作。可以根据实际任务的需要对宏进行插入、删除、移动、复制等必要的编辑。

(7)保存宏:单击宏标题右侧的“关闭”按钮,弹出提示信息框,单击“是”按钮,弹出“另存为”对话框,输入宏名称,单击“确定”按钮,即可保存所创建的宏。

【例6-1】以“联系人管理系统”为例,建立一个打开查询窗体的宏。

(1)打开“联系人管理系统”数据库,单击“创建”功能区的“其他”工具组中的“宏”按钮,进入宏设计视图。

(2)单击“操作”列中的单元格,在弹出的下拉列表框中选择openForm选项。

(3)在窗口的下部,可以设置操作参数。在“窗体名称”下拉列表框中列出了数据库中的所有窗体,选择“按性别查询窗体”,如图6-8所示。

img324

图6-8 设置操作参数

(4)在“视图”下拉列表框中,列出了打开窗体的7种不同视图方式,选择“窗体”视图,如图6-9所示。

img325

图6-9 设置窗体视图方式

(5)在“窗口模式”下拉列表框中,列出了窗口的4种显示方式,选择“普通”方式,如图6-10所示。

img326

图6-10 设置窗口模式

(6)单击宏标题右侧的“关闭”按钮,弹出提示信息框,单击“是”按钮,弹出“另存为”对话框,输入宏名称“打开查询窗体”,单击“确定”按钮,保存宏操作。至此,完成了宏的所有创建工作,可以在数据库窗口中运行它。

2.创建宏组

宏组是存储在同一个宏名下的相关宏的组合,是多个基本宏的集合。宏操作是宏最基本的单元,一个宏操作由一个宏命令完成。宏是宏操作的集合,有宏名。宏组是宏的集合,有宏组名。简单宏组包含一个或多个宏操作,没有宏名;复杂宏组包含一个或多个宏(必须有宏名),这些宏分别包含一个或多个宏操作。它与其他宏一样可在宏窗口中进行设计,并保存在数据库窗口的“宏”功能区中。它可以通过引用宏组中的“宏名”(宏组名.宏名)执行宏组中的宏。执行宏组中的宏时,Access系统将按顺序执行“宏名”列中的宏所设置的操作以及紧跟在后面的“宏名”列为空的操作。

【例6-2】以“联系人管理系统”为例,建立一个打开查询窗体的宏组。

(1)打开“联系人管理系统”数据库,单击“创建”功能区的“其他”工具组中的“宏”按钮,进入宏设计视图。

(2)重复执行例6-1中的步骤(2)、(3),设置另外两个openForm选项(包含“打开按类型查询窗体”和“打开按姓名查询窗体”这两个宏)。

(3)单击“设计”选项卡上的“显示/隐藏”选项组中的“宏名”选项,出现“宏名”列,即可设计宏组:设置的宏名分别为“打开按性别查询窗体”、“打开按类型查询窗体”和“打开按姓名查询窗体”,如图6-11所示。

注意:在宏名列中输入宏名,从宏名所在行开始到下一个宏名为止的连续行就构成一个宏;空行被视为空操作;特别地,第一个宏名前面的行也可以像一般宏那样设计,但这些行的操作只属于宏组而不属于宏组中的任何宏。一个宏组可以包含多个宏;完成宏组设计后必须输入宏组名称及时保存。

img327

图6-11 设置宏名

(4)单击宏标题右侧的“关闭”按钮,弹出提示信息框,单击“是”按钮,弹出“另存为”对话框,输入宏组名称“打开查询窗体”,单击“确定”按钮,保存宏组操作。

3.创建条件宏

在某些情况下,可能希望当且仅当特定条件为真时,才在宏中执行一个或多个操作。例如,如果在某个窗体中使用宏来校验数据,可能要显示相应的信息来响应记录的相应输入值。在这种情况下,可以使用条件来控制宏的流程。所谓条件宏就是在“条件”列中有条件表达式的宏。条件是一个运算结果为True/False或“是/否”的逻辑表达式。宏将根据条件结果的真或假而沿着不同的路径进行。

在条件宏中,通过“条件”列中的条件表达式来控制宏操作的流程。在“条件”列输入条件表达式,既可以直接键盘输入,也可以右键单击条件列,从弹出菜单中选择“生成器”,在表达式生成器中建立条件表达式。

在书写条件宏中的条件表达式时,应该注意,每一个条件表达式只能控制与它同行的操作是否执行,如果连续多个操作行的条件表达式相同,那么可以采用省略写法:在这一组操作的第一行输入条件表达式,其他行只在“条件”列输入三个点“…”。运行宏时,系统会计算条件表达式,如果为True(真)就执行同行的操作命令,然后,Access将执行宏中所有其他“条件”列为空的操作,直到到达另一个表达式、宏名或宏的结尾为止。如果为False(假),就不执行同行的操作命令,以及紧接着此操作且在“条件”字段内加省略号“…”的操作,并且移到下一个其他条件或“条件”列为空的操作行。

【例6-3】“联系人管理系统”数据库中,在所创建的“打开查询窗体”宏中添加一个新功能,在打开窗体之前提示用户确认,提示信息为“请输入性别男或女:”。

(1)打开数据库“联系人管理系统”,并打开宏“打开查询窗体”,单击工具栏中的“条件”按钮img328,显示“条件”列。

(2)在宏操作“OpenForm”行,在“条件”单元格中输入表达式“MsgBox(“请输入性别男或女:",1)=1",如图6-12所示。

图6-12 设置条件单元格

(3)单击“保存”按钮,宏设置完成。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈