使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

可以使用 CancelEvent 操作取消导致 Access 运行包含此操作的 宏事件 。 宏名称是事件属性(例如 BeforeUpdateOnOpenOnUnloadOnPrint)的设置。

注意: CancelEvent 宏操作在 Access Web 应用中不可用。

设置

CancelEvent 操作没有任何参数。

备注

在 窗体 中,通常使用带有 BeforeUpdate 事件属性的 验证 宏中的 CancelEvent 操作。 当用户在 控件 或 记录 中输入数据时,Access 会在将数据添加到数据库之前运行宏。 如果数据未通过宏中的验证条件, 则 CancelEvent 操作会在启动前取消 更新 进程。

通常,将此操作与 MsgBox 操作一起使用,以指示数据未通过验证条件,并提供有关应输入的数据类型的有用信息。

CancelEvent 操作可以取消以下事件。

ApplyFilter

Dirty

MouseDown

BeforeDelConfirm

退出

NoData

BeforeInsert

筛选器

打开

BeforeUpdate

格式

打印

DblClick

KeyPress

卸载

删除


注意: 仅可将 CancelEvent 操作与 MouseDown 事件一起使用,以取消右键单击对象时发生的事件。

如果控件的 OnDblClick 事件属性设置指定了包含 CancelEvent 操作的宏,该操作将取消 DblClick 事件。

对于可以取消的事件,事件的默认行为 (即 Access 通常在事件发生时执行的操作,) 事件宏运行后发生。 这使你可以取消默认行为。 例如,双击 文本框 中插入点所在的单词时,Access 通常会选择该单词。 可以在 DblClick 事件的宏中取消此默认行为,并执行一些其他操作,例如打开包含文本框中数据相关信息的窗体。 对于无法取消的事件,默认行为在宏运行之前发生。

注意: 如果窗体的 OnUnload 事件属性指定了执行 CancelEvent 操作的宏,则无法关闭窗体。 必须更正导致执行 CancelEvent 操作的条件,或者打开宏并删除 CancelEvent 操作。 如果窗体是 模式 窗体,则无法打开宏。

若要在 Visual Basic for Applications (VBA) 模块中执行 CancelEvent 操作,请使用 DoCmd 对象的 CancelEvent 方法。

示例

使用宏验证数据

以下验证宏检查在“供应商”窗体中输入的邮政编码。 它显示了 StopMacroMsgBoxCancelEventGoToControl 操作的用法。 条件表达式检查窗体记录中输入的国家/地区和邮政编码。 如果邮政编码的格式不正确,则宏将显示一个消息框并取消保存记录。 然后,它会将你返回到邮政编码控件,你可以在其中更正错误。 此宏应附加到“供应商”窗体的 BeforeUpdate 属性。

条件

采取行动的

参数:设置

评论

IsNull ([CountryRegion])

StopMacro

如果 CountryRegion 为 Null,则无法验证邮政编码。

[CountryRegion]在 (“法国”,“意大利”,“西班牙”) 和伦 ([邮政编码]) <> 5

MsgBox

邮件:邮政编码必须为 5 个字符。

蜂鸣声:

类型: 信息

标题:邮政编码错误

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

...

CancelEvent

取消事件。

GoToControl

控件名称:PostalCode

[CountryRegion]在 (“澳大利亚”,“新加坡”) 和伦 ([邮政编码]) <> 4

MsgBox

邮件:邮政编码必须为 4 个字符。

蜂鸣声:

类型: 信息

标题:邮政编码错误

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

...

CancelEvent

取消事件。

GoToControl

控件名称:PostalCode

([CountryRegion] = “Canada”) 和 ([邮政编码] not like“[A-Z][0-9][A-Z] [0-9][A-Z][0-9]”)

MsgBox

消息:邮政编码无效。 加拿大代码示例:H1J 1C3

蜂鸣声:

类型: 信息

标题:邮政编码错误

如果加拿大的邮政编码不正确,则显示一条消息。 (加拿大代码示例:H1J 1C3)

...

CancelEvent

取消事件。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×