8.4创建宏

    目录

    1.创建独立宏

    2.创建子宏

    3.创建带条件的宏


1.创建独立宏

    在Access中AutoExec是一个特殊的宏,它在启动数据库时会自动运行,这个自动运行的宏是一个典型独立宏.
       创建一个自动运行宏,用来打开"教学学管理”的登录窗体。其操作步骤如下:
    (1)首先使用窗体设计视图,创建一个登录窗体。登录窗体上包括一个文本框,用来输入密码。一个命令按钮用来验证密码(此命令按钮留待后面再进行创建)以及窗体标题和图片,该登录窗体的创建结果。

    (2)在“创建”选项卡的“宏与代码”组中,单击“宏”按钮,打开“宏设计器”。
    (3)在“操作目录”窗格中,展开“数据库对象”,把“OpenForm"操作拖到组合框中。单击“窗体名称”组合口右侧下拉箭头,在列表中选择“登录”窗体,其他参数默认。

     (4)在“快速工具栏”中单击“保存”按钮,以“AutoExec’’名称保存宏。这样以后启动教学管理数据库时,AutoExec自动运行,打开“登录”窗体。

    2.创建子宏

    在一个宏中可以包含多个子宏,每个子宏都必须定义自己的宏名,以便分别调用。创建含有子宏的宏的方法与创建宏的方法基本相同。不同的是在创建过程中需要对子宏命名。
    例    在“教学管理”数据库中,创建一个名为“宏组练习”的宏组,该宏组由“宏1”、  “宏2”和“宏3”三个宏组成,这三个宏的功能分别如下:
    (1)宏1

  •     打开“成绩优秀学生”查询.
  •     错误处理

    (2)宏2

  •     打开“教师查询”
  •     使计算机的小喇叭发出“嘟嘟”的鸣叫声。

   (3)宏3 

  •     保存所有的修改后,退出Access数据库系统。

    操作步骤如下:
    (1)打开“教学管理”数据库,在“创建”选项卡的“宏与代码”组中,单击“宏“按钮,打开“宏设计器”。
    (2)在“操作目录”窗格中,把程序流程中的”子宏”拖到“添加新操作”组合框中,在子宏名称文本框中,默认名称为Sub1,把该名称修改为“宏1”。在添加新操作组合框中,选中“OpenQuery”,设置查询名称为“成绩优秀学生”,数据模式为“只读”。
    (3)在下面的添加新操作组合框中打开列表,从中选中OnError操作,设置转至为“下一个”。


    (4)按照上面的方法依次设置宏2和宏3。

    (5)单击”快速工具栏”上的“保存”按钮,弹出“另存为”对话框,输入宏名:  “子宏练习”,然后单击“确定”按钮,保存所创建的子宏。
  说明    OnError是错误处理操作。它的参数有三个选项:  “下一个”,  “宏名”和“失败”。

  •     下一个:即跳过当前宏操作,执行下一个操作.
  •     宏名:跳转到指定宏名处继续执行.
  •     失败:调整运行宏.

    3.创建带条件的宏

    通常,宏是按顺序从第一个宏操作依次往下执行。但在某些情况下,要求宏能按照给定的条件进行判断来决定是否执行某些操作。这就需要通过设置条件来控制宏的流程,使用 If 操作,使得宏具有了逻辑判断能力。
    条件是一个计算结果为True/False或“是/否”的逻辑表达式,宏将根据条件结果的真或假而沿着不同的分支执行。例如

使用下列表达式

执行该操作的条件

[城市]=上海

如果字段的值=上海则宏操作将执行

DCount([订单ID],订单)>35

“订单”表的“订单ID”字段的项数超过35

DCount(*,订单明细[订单ID]=Forms![订单]![订单ID])>3

“订单明细表中的“订单ID”字段值与“订单”窗体的“订单ID”字段值匹配,“订单明细”表中满足这一条件的记录超过3条

[发货日期] Between #2010年2月2日#

And #2010年3月2日#

执行此宏的窗体上的“发货日期字段值在2010年2月2日和2010年3月2 日之问

IsNull([名字])或[名字] IS Null

运行该宏的窗体上的名字字段值是空(没有值)

     对于复杂的条件,.宏设计器提供了使用表达式生成器来编辑条件。
        在“教学管理”数据库中,创建一个登录验证宏,使用命令按钮运行该宏时,对用户所输入的密码进行验证,只有输入的密码为“123456”才能打开启动窗体,否则,弹出消息框,提示用户输入的系统密码错误。操作步骤如下:
    (1)在“创建”选项卡的“宏与代码”组中,单击“宏”按钮,打开“宏设计器”,
    (2)在添加新操作组合框中,输入“IF,单击条件表达式文本框右侧的按钮。
    (3)打开“表达式生成器”对话框,在“表达式元素”窗格中,展开“教学管理/Forms/所有窗体”,选中“登录”窗体。在”表达式类别”窗格中,单击"Text4”,在表达式值中输入."<>"123456"”。单击“确定”按钮,返回到“宏设计器”中。


    (4)在“添加新操作”组合框中单击下拉箭头,在打开的列表中选择“MessageBox,在“操作参数”窗格的“消息”行中输入“密码错误!请重新输入系统密码!”,在类型组合框中,选择“警告”,其他参数默认。


    (5)重复步骤(2)和(3),设置第2个IF.在IF的条件表达式中输入条件:[Forms]![登录]![Text0]="123456”。在添加新操作组合框中,选择“CloseWindows”,其他参数分别为“窗体、登录、否”。


    (6)重复步骤(2)和(3),设置第3个IF。在添加新操作中,选择“OpenForm”,各参数分别为“教师、窗体、普通”,设置的结果。保存宏名称为“登录验证”。


    ( 7)打开“登录”窗体切换到设计视图中,在“设计“选项卡的“控件”组中,单击“命令”按钮,打开“请选择按下按钮时执行的操作”对话框。
    (8)在对话框中,在“类别”窗格中,选择“杂项”,在“操作”窗格中,选择“运行宏”,单击“下一步”按钮。


    (9)在打开的“请确定命令按钮运行的宏”对话框中,选中“登录验证”宏,然后单击“下一步”按钮。


    (10)在打开的“请确定在按钮上显示文本还是显示图片”对话框中,选中“文本”,输入“登录验证”,然后单击“完成”按钮。
    这样在启动教学管理数据库时,首先打开“登录”窗体,在用户输入密码后,单击“登录验证”按钮验证密码,如果密码不是“123456”,则弹出提示框,显示“密码错误!请重新输入系统密码!”。当密码是“123456”时,则关闭“登录”窗体,打开“教师”窗体,进入到教学管理数据库中。

测试后修改这了这个宏

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ngbshzhn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值