7.3 编辑和运行宏
对于设计完成的宏,如果发现宏中,存在不合适的操作,或者存在错误操作,则需要对“问题宏”进行编辑修改;对于修改好的确实没有问题的宏,则可以运行或者调用。
7.3.1 编辑宏
编辑宏的方法与创建宏的方法基本相同。具体包括独立宏、嵌入宏和数据宏等类型的编辑。
7.3.1.1 编辑独立宏
编辑“独立宏”的方法是打开指定数据库,在“导航窗格”中展开“宏”对象,右击指定的宏,在弹出的“快捷菜单”中,选择“设计视图”,在“宏设计器”中打开该宏。
利用“添加新操作”,添加新的“宏操作”。
利用绿色的“上移”和“下移”按钮,上下移动操作命令的位置。
利用“加号”和“减号”按钮,展开或者折叠当前宏操作。
利用黑色的“删除”按钮,删除当前宏操作。
利用宏操作提供的多个选项,进一步修改相关参数。
7.3.1.2 编辑嵌入宏
编辑“嵌入宏”的方法是打开指定数据库,在“导航窗格”中展开“窗体”,或者“报表”对象,右击指定的对象,在弹出的“快捷菜单”中,选择“设计视图”,在窗体或者报表的“设计视图”中打开该对象。
选中“窗体”(“报表”)对象,或者其控件对象,在“属性表”中,单击“事件”选项卡,在含有“[嵌入的宏]”的事件的右侧,单击“…”按钮,打开嵌入宏的“宏生成器”,其后的具体修改方法,同“独立宏”。
7.3.1.3 编辑数据宏
编辑“数据宏”的方法是打开指定数据库,在“导航窗格”中展开“表”对象,右击指定的表,在弹出的“快捷菜单”中,选择“设计视图”,打开表的“设计视图”。
单击“表格工具”的“设计”上下文选项卡,单击“字段、记录和表格事件”组中的“创建数据宏”下拉列表,选择需要修改的“数据宏”,打开数据宏的“宏生成器”,其后的具体修改方法,同“独立宏”。
7.3.2 运行宏
在Access 2010中,提供了多种运行宏的方法。可以直接运行,可以从宏(事件过程)中运行宏,可以按照单步方式调试运行,可以在窗体(报表)的众多事件中调用宏,可以创建自定义菜单命令(工具栏按钮)运行宏,可以使用功能热键运行宏,可以在打开数据库时自动运行宏。
7.3.2.1 导航窗格运行宏
在打开数据库之后,直接运行指定的宏。操作方法:
方法1:打开指定的数据库,在“导航窗格”中,展开“宏对象”,双击指定的“宏”。
方法2:在“导航窗格”中,展开“宏对象”,右击指定的“宏”,在“快捷菜单”中,选择“运行”。
7.3.2.2 数据库工具运行宏
在打开数据库之后,利用“数据库工具”直接运行指定的宏。操作方法:
(1)打开指定的数据库,单击“数据库工具”选项卡。
(2)在“宏”组中,单击“运行宏”按钮,启动“执行宏”对话框如图7.28所示。
(3)在“宏名称”下方的下拉组合框中,选择需要运行的宏的名称,或者直接输入需要运行的宏的名称,单击“确定”。
图7.28 执行宏对话框
7.3.2.3 设计视图运行宏
在宏的“设计视图”状态下,直接运行指定的宏。操作方法:
(1)在“导航窗格”中,展开“宏对象”,右击指定的“宏”。
(2)在“快捷菜单”中,选择“设计视图”,启动宏的“设计视图”。
(3)单击“宏工具”的“设计”上下文选项卡,单击“工具”组中的“运行”按钮。
7.3.2.4 单步运行宏
“单步”运行宏是指逐步运行宏的方式。即每执行一步操作,系统会暂停宏的运行,并弹出如图7.29所示的对话窗口,然后单击“单步执行”按钮,执行每一个宏操作,并分析每一步的相关参数和错误信息。操作方法:
(1)通过“导航窗格”的“宏对象”,启动指定宏的“设计视图”。
(2)单击“宏工具”的“设计”上下文选项卡,单击“工具”组中的“单步”按钮,使其处于“选中”状态,然后单击“运行”按钮,如图7.29所示,开始进入“单步”执行状态。
(3)单击“单步执行”,可以执行下一个操作,并通过左侧的“条件”“操作名称”“参数”和“错误号”等观察分析当前操作的运行情况。
(4)单击“停止所有宏”,停止当前执行的所有宏。
(5)单击“继续”,继续执行当前宏。
按照单步方式运行“例7-3选择打开窗体和报表”的界面如图7.29所示。
▲技巧:“单步”运行宏,通常用于“宏”的调试。
图7.29 单步执行宏的窗口
7.3.2.5 RunMacro调用宏
在宏的“设计视图”中,添加“RunMacro”操作,如图7.30所示。
在“宏名称”的右侧,选择指定的宏,或者直接输入需要调用的宏的名称。
在“重复次数”的右侧,输入重复执行宏的次数。空白默认执行1次。
在“重复表达式”的右侧,输入运行宏的条件表达式。如果表达式的值为真(True,-1)则执行宏,如果为假(False,0),则停止运行“宏”。
图7.30 RunMacro窗口
7.3.2.6 控件调用宏
如果希望从窗体、报表或者控件中运行宏,可任意单击其“设计视图”中的相应控件,在相应“属性表”的对话框中,选择“事件”选项卡的对应事件,然后在下拉列表框中,选择当前数据库中的相应宏,或者直接输入相应的宏。每当该事件发生时,就会自动执行所设定的宏。
在窗体或者报表中,“属性表”的事件属性设置界面如图7.31所示。
图7.31 属性表的事件属性设置界面
7.3.2.7 运行子宏
对于包含多个“子宏”的“组宏”,在运行“组宏”时,通常只运行“组宏”的第1个“子宏”。如果需要运行“组宏”中的其他“子宏”,则需要使用如下格式:
组宏名称.子宏名称
▲注意:“组宏名称”和“子宏名称”之间是英文的圆点,用于连接“组宏名称”和“子宏名称”,同时指明“子宏”和“组宏”的隶属关系。
7.3.2.8 快捷菜单运行宏
快捷菜单是实际操作中,使用概率最高的一种操作方式。使用快捷菜单,不但灵活、方便、快捷,而且不影响界面的美观(隐藏在系统的后台),需要使用时,可以在任何位置,通过“右击”操作快速调出。快捷菜单的创建方法:
(1)创建包含下级子菜单的“组宏”。“组宏”中的每个“子宏”,对应一个子菜单项;子宏的名称,对应子菜单项的名称;子宏的操作,对应子菜单的功能。
(2)使用“AddMenu”,创建主菜单。每个“AddMenu”,对应一个主菜单项,并且调用相应的“独立宏”。
(3)单击“文件”选项卡,单击“选项”,单击“自定义功能区”;在右侧的树状“主选项卡”的列表区,选中并展开“数据库工具”,单击下方的“新建组”,在“数据库工具”下,创建一个“宏建菜单”的自定义组。如图7.31所示。
图7.32 添加“用宏创建快捷菜单”
然后,把左侧“列表框”中,选中“用宏创建快捷菜单”命令项(注意:在“不在功能区中的命令”分类中),单击“添加”按钮,把“用宏创建快捷菜单”添加到右侧的“宏建菜单(自定义)”组中。
通过上述操作,在“数据库工具”的选项卡中,会增添一个“宏建菜单”组,并且包含一个“用宏创建快捷菜单”的按钮。如图7.32所示。
图7.33 数据库工具的宏建菜单组
(4)选中用于创建快捷菜单的宏,在“数据库工具”的选项卡中,单击“宏建菜单”组中“用宏创建快捷菜单”按钮。
(5)在需要创建“快捷菜单”的“主控窗体”的“属性表”中,单击“其他”选项卡,在“快捷菜单”右侧,选择“是”;在“快捷菜单栏”的右侧,选择主菜单对应的“独立宏”。
【例7-12】创建快捷菜单。在学籍数据库中,给窗体“例5-13窗体调用”,创建如图7.34所示的“快捷菜单”。要求:
图7.34 窗体的快捷菜单
(1)快捷菜单的主菜单项包括:打开查询、打开窗体、打开报表和退出系统。
(2)打开查询的下拉菜单包括:打开例4-1、打开例4-2和打开例4-3。
(3)打开窗体的下拉菜单包括:打开例5-1、打开例5-2和打开例5-3。
(4)打开报表的下拉菜单包括:打开例6-1、打开例6-2和打开例6-3。
(5)退出系统的下拉菜单包括:退出系统。
操作方法:
(1)打开学籍数据库。
(2)单击“创建”选项卡,单击“宏与代码”组的“宏”,启动宏的“设计视图”。
(3)创建如图7.35所示的名称为“例7-12打开查询”的“组宏”。具体包括3个子宏,子宏的名称分别为“打开例4-1”“打开例4-2”和“打开例4-3”;每个子宏均添加一个“OpenQuery”操作,分别用于打开“例4-1”“例4-2”和“例4-3”。
图7.35 打开查询的组宏
(4)同理,创建如图7.36—图7.38所示的三个“组宏”。“组宏”的名称分别为“例7-12打开窗体”“例7-12打开报表”和“例7-12退出系统”。
图7.36 打开窗体的组宏
图7.37 打开报表的组宏
图7.38 打开报表的组宏
(5)利用宏的“设计视图”,通过添加“AddMenu”操作,创建如图7.39所示的主菜单“独立宏”,其名称为“例7-12快捷菜单”。
图7.39 主菜单的独立宏
其中,4个“AddMenu”的“菜单名称”分别为:打开查询、打开窗体、打开报表和退出系统;“菜单宏名称”分别选择:例7-12打开查询、例7-12打开窗体、例7-12打开报表和例7-12退出系统。
(6)在“导航窗格”中,展开“宏”对象,选中“例7-12快捷菜单”。单击“数据库工具”选项卡,单击“宏建菜单”组中的“用宏创建快捷菜单”按钮。
▲提示:如果没有“宏建菜单”和“用宏创建快捷菜单”,请按照前述方法自行创建。
(7)在“导航窗格”中,展开“窗体”对象,打开“例5-13窗体调用”的“设计视图”,在“属性表”中,单击“其他”选项卡,在“快捷菜单”右侧,选择“是”;在“快捷菜单栏”的右侧,选择“例7-12快捷菜单”。
用户不但可以通过“RunMenuCommand”运行Access内置的菜单命令,而且可以通过“宏”,自己创建具有个性化的“自定义系统菜单”和“自定义工具栏”,同时将相应的宏添加到“菜单栏”,或者“工具栏”,从而在“菜单栏”,或者“工具栏”上运行宏。具体创建方法与“快捷方式”相同。
7.3.2.9 快捷键运行宏
利用热键宏AutoKeys,为每个子宏定义一个“快捷键”。打开拥有“AutoKeys”热键宏的数据库之后,在AutoKeys中设定的快捷键会自动生效。即通过按下相应的“快捷键”,调用并执行相应的子宏。
7.3.2.10 自动运行宏
通过创建一个名称为AutoExec的“自动宏”,来自动执行AutoExec中的相应操作。即打开拥有“AutoExec”自动宏的数据库之后,系统会首先找到名称为“AutoExec”的宏,然后自动执行AutoExec中的操作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。