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

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

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

MsgBox 操作[8]

使用 MsgBox 操作可以显示包含警告信息或其他信息的消息框。例如,可以在有效性中使用 MsgBox 操作。当控件记录不符合宏中的有效性验证条件时,消息框将显示错误消息,并提示应该输入的正确数据类型。

MsgBox 操作具有下列参数:

操作参数

说明

消息

消息框中的文本。在窗口操作参数节的消息框中输入文本。最多可键入 255 个字符或输入一个表达式(前面必需有等号)。

发嘟嘟声

指定计算机在显示消息时,是否发出的嘟嘟声。可以选择(发出嘟嘟声)或(不发出嘟嘟声)。默认值为

类型

消息框的类型。每种类型都有不同的图标。可以选择重要警告?警告!信息。默认值为

标题

消息框标题栏中显示的文本。例如,可以在标题栏显示顾客标识号有效性。如果将本参数留空,则标题栏显示“Microsoft Access”

说明   使用 MsgBox 操作,可以创建与 Access 显示的内置错误消息类似的带格式错误消息。MsgBox 操作允许在消息参数的三个节中提供消息。可以使用“@”字符来分隔各节。

下面的示例显示具有分节消息的格式化消息框。消息中的第一节文本以加粗方式显示标题。第二节在标题下方,以纯文本显示。第三节在第二节下方,以纯文本显示,两者之间有一个空行。

例:在消息参数中输入下列消息:按钮错误!@该按钮不起作用。@请尝试另一个按钮。

Microsoft Visual Basic 中没有该操作。只能使用 MsgBox 函数来代替。

示例  通过使用宏同步窗体

下面的宏会在供应商窗体的右下角打开一个产品列表窗体,显示当前供应商所供应的产品。它显示了 EchoMsgBoxGoToControlStopMacroOpenForm MoveSize 等操作的使用方法,同时也显示了 MsgBoxGoToControl StopMacro 操作的条件表达式的使用方法。该宏应附加到供应商窗体的回顾产品按钮上。

条件

操作

参数:设置

备注

 

Echo

打开回响:否

在宏执行过程中停止屏幕更新。

IsNull([供应商ID])

MsgBox

消息:请移至要查看其产品的供应商记录上,然后再次单击回顾产品按钮。 发嘟嘟声: 类型: 标题:选择供应商

如果供应商窗体中没有当前供应商的数据,则显示一条信息。

 

GoToControl

控件名称:公司名称

将焦点移到公司名称控件上。

...

StopMacro

 

停止执行宏。

 

OpenForm

窗体名称:产品列表 视图:数据表 筛选名称:    Where 条件:[供应商ID] = [Forms]![供应商]![供应商ID] 数据模式:只读 窗口模式:普通

打开产品列表窗体并显示当前供应商的产品。

 

MoveSize

右:0.7799 英寸

下:1.8 英寸

产品列表窗体放在供应商窗体的右下方。

通过使用宏验证数据

下面的验证宏检查在供应商窗体中输入的邮政编码。它显示 StopMacroMsgBoxCancelEvent GoToControl 操作的使用方法。条件表达式用于检查在该窗体上记录中输入的国家/地区和邮政编码。如果邮政编码不符合其国家/地区的正确格式,宏将显示消息框,并取消对记录的保存。然后您将返回到邮政编码控件并可以在那里改正错误。该宏应附加到供应商窗体的 BeforeUpdate 属性。

条件

操作

参数:设置

备注

IsNull([国家/地区])

StopMacro

 

如果国家/地区 Null,就无法验证邮政编码。

[国家/地区] In ("法国","意大利","西班牙") And Len([邮政编码]) <> 5

MsgBox

消息:邮政编码必须为 5 个字符。  发嘟嘟声: 类型:信息 标题:邮政编码错误

如果邮政编码不是 5 个字符,则会显示消息。

...

CancelEvent

 

取消事件。

 

GoToControl

控件名称:邮政编码

 

[国家/地区] In ("澳大利亚","新加坡") And Len([邮政编码]) <> 4

MsgBox

消息:邮政编码必须为 4 个字符。  发嘟嘟声: 类型:信息 标题:邮政编码错误

如果邮政编码不是 4 个字符,则会显示消息。

...

CancelEvent

 

取消事件。

 

GoToControl

控件名称:邮政编码

 

([国家/地区] = "加拿大") And ([邮政编码] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]")

MsgBox

消息:邮政编码无效。加拿大编码示例:H1J 1C3 发嘟嘟声: 类型:信息 标题:邮政编码错误

如果邮政编码不符合加拿大的有效格式,则会显示消息。(加拿大编码示例:H1J 1C3

...

CancelEvent

 

取消事件。

OpenDataAccessPage 操作

可以在页”视图设计”视图中,使用 OpenDataAccessPage 操作打开数据访问页

OpenDataAccessPage 操作具有以下参数:

操作参数

说明

数据访问页名称

要打开的页名。在窗口操作参数节中的数据访问页名称框中显示了当前数据库中的所有页。该参数是必选参数。

如果在类库数据库中运行包含 OpenDataAccessPage 操作的宏,Microsoft Access 首先在类库数据库查找具有该名称的页,然后再在当前数据库中查找。

视图

将在其中打开数据访问页的视图。单击视图框中的浏览设计。默认值为浏览

说明   该操作类似于单击对象下的 后单击打开按钮或设计按钮,然后在数据库窗口中选择数据访问页。

提示   可以在数据库窗口中选择一个数据访问页,并将其拖到宏操作行中。这样,就会自动创建一个 OpenDataAccessPage 操作,该操作在视图中打开此数据访问页。

若要在 Microsoft Visual Basic 中运行 OpenDataAccessPage 操作,请使用 DoCmd 对象的 OpenView 方法。

OpenDiagram 操作

Microsoft Access 项目中,可以使用 OpenDiagram 操作在设计”视图中打开数据库图表

设置

OpenDiagram 操作具有以下参数:

操作参数

说明

图表名称

要打开的数据库图表的名称。在窗口操作参数节中的图表名称框中,显示了当前数据库中的所有图表。该参数是必选参数。

如果在类库数据库中运行包含 OpenDiagram 操作的宏,Microsoft Access 首先在类库数据库查找具有该名称的图表,然后再在当前数据库中查找。

说明   该操作类似于在单击对象下的数据库图表后单击设计按钮,然后在 数据库”窗口中选择数据库图表。

提示   可以在数据库窗口中选择一个数据库图表,然后将其拖到宏的操作行中。这样,就会自动创建一个 OpenDiagram 操作,该操作在设计视图中打开数据库图表。

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

OpenForm 操作

使用 OpenForm 操作,可以在窗体”视图或从窗体设计”视图打印预览”数据表”视图中打开窗体,可以选择窗体的数据输入与窗口模式并限制窗体所显示的记录

OpenForm 操作具有以下参数:

操作参数

说明

窗体名称

打开窗体的名称。在窗口操作参数节中的窗体名称框中显示了当前数据库中的全部窗体。该参数是必选的参数。

如果在类库数据库中执行包含 OpenForm 操作的宏,Microsoft Access 将首先在类库数据库中查找具有该名称的窗体,然后再到当前数据库中查找。

视图

打开窗体的视图。可在视图框中选择窗体设计打印预览数据表数据透视表数据透视图。默认值为窗体

注意   “视图参数设置会忽略窗体的默认视图允许视图的属性设置。例如,如果某个窗体的允许视图属性设置为数据表,仍然可以使用 OpenForm 操作在窗体视图中打开窗体。

筛选

名称

用于限制或排序窗体中记录的筛选。可以输入一个已有查询的名称或另存为查询的筛选名称。不过,该查询必须包含所打开窗体的所有字段,或将这个查询的输出所有字段属性设置为

Where 条件

Access 用以从窗体的基础表或基础查询中选择记录的有效 SQL Where 子句(不包含 Where 一字)或表达式。如果用筛选名称参数选择筛选,那么 Access 将这个 Where 子句应用于筛选的结果。

如果要打开某个窗体,并将该窗体中的记录数限制为使用其他窗体中的控件的值所指定的记录数,可使用下列表达式:[fieldname] = Forms![formname]![controlname on other form]

FieldName 参数是要打开的窗体的基础表或基础查询中的字段名。controlname on other form 参数是其他窗体中的控件名称,该控件包含需要与第一个窗体的记录匹配的数值。

注意   Where 条件参数的最大的长度是 255 个字符。如果需要输入比此更长、更复杂的 SQL Where 子句语句,可使用 Microsoft Visual Basic DoCmd 对象的 OpenForm 方法来代替。在 Visual Basic 中可以输入最长为 32,768 个字符的 SQL Where 子句。

数据

模式

窗体的数据输入模式。该参数只能应用于在窗体视图或数据表视图中打开的窗体。可选择添加(用户可以添加新记录,但不能编辑已有记录)、编辑(用户可以编辑已有记录,也可以添加记录)或只读(用户只能查看记录)。默认值为编辑

1.数据模式参数设置会忽略窗体的允许编辑允许删除允许添加数据输入属性设置。例如,如果窗体的允许编辑属性设置为,仍然可以用 OpenForm 操作在编辑模式下打开窗体。

2.如果该参数留空,Access 会以窗体的允许编辑允许删除允许添加数据输入属性所指定的数据输入模式打开窗体。

窗口

模式

在其打开窗体的窗口模式。单击普通,这样窗口模式由窗体的下列属性指定:隐藏(隐藏窗体)、图标(窗体在打开时最小化为屏幕底部的小标题栏)或对话框(窗体的模式弹出式属性设置为)。默认值为普通

说明   该操作类似于单击对象下的窗体后单击打开按钮或设计按钮,然后在数据库窗口中选择窗体。

窗体可以是模式(该窗体必须在用户执行任何其他操作前关闭或隐藏)的、非模式(用户可以在窗体打开时移动到其他窗口中)的。窗体也可以是弹出式窗体(停留在所有其他 Access 窗口顶部的窗体,用以收集或显示信息)。设计窗体时,可以设置模式弹出方式属性。如果将窗口模式参数设置为普通,那么窗体会以这些属性设置所指定的方式打开。如果将窗口模式参数设置为对话框,那么这两个属性都将被设置为。当显示或恢复某个以隐藏或图标方式打开的窗体时,它返回到由窗体属性设置所指定的模式中。

打开窗口模式参数设置为对话框的窗体时,Access 将暂时挂起宏的执行,直到窗体关闭或隐藏为止。也可以使用 SetValue 操作,将 Visible 属性设置为,以此方式来隐藏窗体。

提示   数据库窗口中选择窗体,然后将其拖到宏操作行中,可以自动创建在窗体视图中打开该窗体的 OpenForm 操作。

所应用的筛选和 Where 条件将成为窗体的过滤器属性设置。

示例   通过使用宏设置控件的值

下面的宏使用供应商窗体中的一个按钮打开增加产品窗体。它显示了 EchoCloseOpenFormSetValue GoToControl 操作的使用方法。SetValue 操作将产品窗体中的供应商ID”控件设置为供应商窗体中的当前供应商,然后 GoToControl 操作将焦点移到类别ID”字段,以便输入新产品的数据。该宏应附加到供应商窗体的添加产品按钮上。

操作

参数:设置

备注

Echo

打开回响:

在宏执行当中停止屏幕更新。

Close

对象类型:窗体 对象名称:产品列表  保存:

关闭产品列表窗体。

OpenForm

窗体名称:产品 视图:窗体 数据模式:添加 窗口模式:普通

打开产品窗体。

SetValue

项目:[Forms]![产品]![供应商ID]  表达式:供应商ID

供应商ID”控件设为供应商窗体中的当前供应商。

GoToControl

控件名称:类别ID

移到类别ID”控件。

通过使用宏同步窗体

下面的宏会在供应商窗体的右下角打开一个产品列表窗体,显示当前供应商所供应的产品。它显示了 EchoMsgBoxGoToControlStopMacroOpenForm MoveSize 等操作的使用方法,同时也显示了 MsgBoxGoToControl StopMacro 操作的条件表达式的使用方法。该宏应附加到供应商窗体的回顾产品按钮上。

条件

操作

参数:设置

备注

 

Echo

打开回响:否

在宏执行过程中停止屏幕更新。

IsNull([供应商ID])

MsgBox

消息:请移至要查看其产品的供应商记录上,然后再次单击回顾产品按钮。 发嘟嘟声: 类型: 标题:选择供应商

如果供应商窗体中没有当前供应商的数据,则显示一条信息。

 

GoToControl

控件名称:公司名称

将焦点移到公司名称控件上。

...

StopMacro

 

停止执行宏。

 

OpenForm

窗体名称:产品列表 视图数据表 筛选名称: Where 条件:[供应商ID] = [Forms]![供应商]![供应商ID] 数据模式:只读 窗口模式:普通

打开产品列表窗体并显示当前供应商的产品。

 

MoveSize

右:0.7799 英寸

下:1.8 英寸

产品列表窗体放在供应商窗体的右下方。

 

 

上一课  下一课



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

常见问答:

技术分类:

相关资源:

专栏作家

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