Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-教程

access编程-操作(宏)[13]

时 间:2009-03-24 08:39:12
作 者:UMVsoft资料   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:Access编程-操作(宏)
正 文:

RunCode 操作[13]

 

使用 RunCode 操作可以调用 Microsoft Visual Basic Function 过程RunCode 操作具有以下参数:

 

  

操作参数

说明

函数名称

要调用的 Visual Basic Function 过程名称。请将任何函数参数写在括号中,并在窗口操作参数节的函数名称框中键入函数名称。该参数是必选参数。

说明    用户定义的 Function 过程保存在 Access 模块中。

即使 Function 过程没有任何参数,括号也是必须的,如下例所示:   TestFunction()

与用来设置事件属性用户定义函数名不同的是,函数名参数中的函数名前没有等号 (=)

Access 将忽略函数的返回值。

注意 如果函数的名称与模块名相同,则不能从宏中调用 Function 过程。

提示   要运行用 Visual Basic 编写的 Sub 过程事件过程,请创建调用 Sub 过程或事件过程的 Function 过程,然后再使用 RunCode 操作运行该 Function 过程。

如果用 RunCode 操作调用函数,Access 将在数据库标准模块中查找由函数名称参数所指定的函数。不过,如果是通过选择窗体报表的菜单命令或在产生窗体或报表事件时运行该操作,Access 将首先查找窗体报表类模块中的函数,然后再在标准模块中查找。Access 不会在数据库”窗口模块选项卡中所显示的类模块中查找由函数名称参数指定的函数。

Visual Basic 中没有该操作。请直接在 Visual Basic 中运行所需 Function 过程。

RunCommand 操作

使用 RunCommand 操作可以运行 Microsoft Access 的内置命令。内置命令可以出现在 Access 菜单栏工具栏快捷菜单上。RunCommand 操作具有以下操作参数:

命令

要运行的命令的名称。命令框中按字母顺序显示了可用的 Access 内置命令。该参数是必需的。

说明   Access 97 中,RunCommand 操作取代了 DoMenuItem 操作。当打开并保存一个包含 DoMenuItem 操作的早期版本的 Access 时,DoMenuItem 操作及其参数会自动转换为对应的 RunCommand 操作。窗口中的操作列表上不再有 DoMenuItem 操作。

使用 RunCommand 操作可以运行自定义菜单栏、全局菜单栏、自定义快捷菜单或全局快捷菜上的 Access 命令。然而,如果要把 Access 命令添加到自定义菜单和快捷菜单中,则使用自定义对话框(将鼠标指向视图菜单上的工具栏,然后单击自定义命令即可显示该对话框)通常会更加简单。在自定义对话框的命令选项卡上列出了显示在 Access 工具栏和菜单中的内置 Access 命令。

在宏中与条件表达式一起使用 RunCommand 操作可以根据一定的条件运行命令。

注意   “文件菜单显示最近使用的数据库。可以单击其中一个数据库以打开它,而不用单击打开数据库。在命令参数的下拉列表框中并没有显示这些数据库项,不能通过在宏中使用 RunCommand 操作的方法访问它们。

在从以前版本的 Access 中转换 Access 数据库时,有些命令将不可用。它们可能在 Access 中被重新命名、移到别的菜单或从此失效。对于这种命令,DoMenuItem 操作将不能转换为 RunCommand 操作。在打开宏时,Access 将会针对这种命令显示一个带有空白命令参数的 RunCommand 操作。必须编辑该宏并输入一个有效的命令参数,或删除 RunCommand 操作。

若要在 Visual Basic 中运行 RunCommand 操作,可使用 Application 对象的 RunCommand 方法。(相当于 DoCmd 对象的 RunCommand 方法。)

RunMacro 操作

使用 RunMacro 操作可以执行。该宏可以在宏组中。

可在以下情况中使用该操作: 1.从某个宏中运行另一个宏。   2.根据一定条件运行宏。    3.将宏附加到自定义菜单命令中。 RunMacro 操作具有以下参数:

操作参数

说明

宏名

所要运行的宏的名称。在窗口操作参数部分的宏名框中显示的是当前数据库中的所有宏(包括所有宏组)。如果宏在宏组中,那么它将以 macrogroupname.macroname 列在列表中宏组名称下面。该参数是必需的。 如果在某个类库数据库中运行含有 RunMacro 操作的宏,Microsoft Access 将在该类库数据库中查找具有该名称的宏,而不是在当前数据库中查找。

重复次数

宏运行次数的上限。如果将本参数留空(并且将重复表达式也留空),该宏将只运行一次。

重复表达式

表达式的计算结果为 True (-1) False (0)。当表达式的值为 False 时宏将停止运行。每次宏运行的时候都将计算该表达式的值。

说明    如果为宏名参数输入的是宏组名称,Access 将运行宏组中的第一个宏。

该操作的效果和单击工具菜单上的(在其中可以选择和运行一个特定的宏)是一样的。不过,使用菜单中的命令只能运行宏一次,而 RunMacro 操作可以不受限制地多次运行宏。

提示   可使用重复次数重复表达式参数来决定宏运行的次数:

  • 如果将两个参数都留空,则宏只运行一次。
  • 如果为重复次数参数输入了某个数字,但将重复表达式参数留空,则宏将运行重复次数参数指定的次数。
  • 如果为重复表达式参数输入了某个表达式,但将重复次数参数留空,则宏将运行至表达式值为 False 为止。
  • 如果为两个参数都输入了值,则宏将运行由重复次数指定的次数或直至重复表达式的值为 False(取决于哪个参数先满足条件)。

如果运行一个含有 RunMacro 操作的宏时遇到了 RunMacro 操作,Access 将运行被调用的宏。该宏运行完以后,Access 将返回原来的宏继续执行下一个操作。

注意

  • 可以调用在同一个宏组或别的宏组中的宏。
  • 宏可以嵌套。也就是说,可运行宏 A,在宏 A 中可以调用宏 B,等等。在这种情况下,当运行完被调用的宏以后,Access 将返回原来的宏中继续执行下一个操作。

提示   可在宏组中用 RunMacro 操作来从自定义菜单中运行一个宏(该宏组为自定义菜单栏定义了自定义命令)。不过,用新的命令栏功能从菜单栏、工具栏快捷菜单运行宏将更容易。在视图菜单上,指向工具栏,单击自定义可显示自定义对话框。在对话框的工具栏选项卡上,选择要从中运行宏的菜单栏、工具栏或快捷菜单。在命令选项卡上,单击类别框中的所有宏,然后在命令框中选择要运行的宏并将其拖至相应的菜单栏、工具栏或快捷菜单中。在菜单栏、工具栏或快捷菜单上单击该宏的图标时,Access 将运行该宏。另外,还可从数据库”窗口将宏拖至菜单栏或工具栏上,Access 会创建运行该宏的图标。

若要在 Visual Basic 中运行 RunMacro 操作,可使用 DoCmd 对象的 RunMacro 方法。

RunSQL 操作

通过使用相应的 SQL 语句,可以用 RunSQL 操作来运行 Microsoft Access 操作查询。还可以运行数据定义查询RunSQL 操作具有以下参数:

操作参数

说明

SQL 语句

所要运行的操作查询或数据定义查询对应的 SQL 语句。该语句的最大长度是 255 个字符。该参数是必需的。

使用事

务处理

选择则在事务处理中包含这个查询。如果不想使用事务处理的话,则选择。默认值为。在 Access 97 之前,当运行该操作时,Access 总是要在事务处理中包括查询。以 BeginTrans 方法开始,执行 SQL 语句,然后以 CommitTrans 方法结束。如果将此参数设为,则查询将运行得更快。

说明    用操作查询可以追加、删除和更新记录,还可以将查询的结果集存为一个新表。用数据定义查询则可以创建、改变和删除表,还可以创建和删除索引。通过 RunSQL 操作可以用一个宏直接来完成这些操作而不需要使用存储的查询。

如果需要键入一个超过 255 个字符的 SQL 语句,请在 Visual Basic 中使用 DoCmd 对象的 RunSQL 方法。在 Visual Basic SQL 语句可长达 32,768 个字符。

Access 查询实际上是 SQL 语句,这些语句是当您在查询”窗口中使用设计网格设计查询时创建的。下表给出了 Access 的操作查询和数据定义查询以及相应的 SQL 语句。

查询类型

SQL 语句

查询类型

SQL 语句

操作

 

数据定义(SQL 特定查询)

Create TABLE

追加

Insert INTO

创建表

Alter TABLE

删除

Delete

修改表

Drop TABLE

生成表

Select...INTO

删除表

Create INDEX

更新

Update

创建索引

Drop INDEX

 

 

删除索引

 

     另外,还可在这些语句中使用 IN 子句来修改另一个数据库中的数据。

注意   若要在宏中运行选择查询交叉表查询,可用 OpenQuery 操作的视图参数在数据表”视图中打开一个已有的选择查询或交叉表查询。还可以用相同的方式运行已有的操作查询和 SQL 特定查询

提示   若要查看与 Access 查询对应的 SQL 语句,请在查询窗口中单击视图菜单上的SQL 视图命令。可以将列出的 SQL 语句作为模板来创建用 RunSQL 操作运行的查询。将 SQL 语句复制到 RunSQL 操作的“SQL 语句参数上,其效果等同于在查询窗口中运行该 Access 查询。

 

 

上一课  下一课



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助