FindRecord 宏操作

你可以使用 Access 桌面数据库中的 FindRecord 操作来查找符合 FindRecord 参数所指定的 条件 的第一个数据实例。 此数据可能在当前 记录 中、当前记录之前或之后的记录中,也可能在第一条记录中。 可以在活动表 数据表、查询数据表、窗体数据表或窗体中查找记录。

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

设置

FindRecord 操作具有以下参数。

操作参数

说明

查找 内容

指定要在记录中查找的数据。 输入要查找的文字、数字或日期,或在宏生成器窗格的“操作参数”部分的“查找内容”框中键入一个以等号 (=) 开头的 表达式。 可以使用通配符。 此参数为必选项。

匹配

指定数据在 字段 中的位置。 可以指定搜索字段任何部分的数据(“字段任何部分”)、填充整个字段的数据(“整个字段”),或位于字段开头部分的数据(“字段开头”)。 默认值为“整个字段”。

区分大小写

指定搜索是否 区分大小写。 单击“”(执行区分大小写的搜索)或“”(执行不严格区分大小的搜索)。 默认值为“”。

搜索

指定搜索是从当前记录向上搜索至记录开头(“向上”);还是向下搜索至记录的结尾(“向下”);或是向下搜索至记录结尾,然后从记录开头搜索至当前记录,以便搜索所有记录(“全部”)。 默认值为“全部”。

格式化搜索

指定是否搜索带格式的数据。 单击“”(Access 将按字段中的格式和显示搜索数据)或“”(Access 将搜索存储在数据库中的数据,该数据并不总与显示的一样)。 默认值为“”。

可以使用此功能来限制对特定格式数据的搜索。 例如,单击“”并在“查找内容”参数中键入 1,234,便可在格式设置为包含逗号的字段中查找值 1,234。 如果要键入 1234 以搜索此字段中的数据,请单击“”。

要搜索日期,请单击“”以查找格式完全相同的日期,如 08-July-2015。 如果单击“”,请按照在 Windows 控制面板的区域设置中设置的格式,为“查找内容”参数输入日期。 此格式将显示在“短日期格式”框中,该框可在区域设置的“日期”选项卡上找到。 例如,如果将“短日期格式”框设置为“M/d/yy”,则可以输入 7/8/15,Access 将查找“日期”字段中所有与 2015 年 7 月 8 日相对应的条目,而忽略该字段的格式。

注意: 只有在当前字段为 绑定控件、将“匹配”参数设置为“整个字段”、将“只搜索当前字段”参数设置为“”并将“区分大小写”参数设置为“”的情况下,“格式化搜索”参数才会生效。

如果将“区分大小写”设置为“”或将“只搜索当前字段”设置为“”,则还必须将“格式化搜索”设置为“”。

只搜索当前字段

指定是将搜索限定为每条记录中的当前字段,还是搜索每条记录中的所有字段。 搜索当前字段的速度更快。 单击“”(将搜索限定到当前字段)或“”(搜索每条记录中的所有字段)。 默认值是“”。

查找第一个

指定是从第一条记录还是从当前记录开始搜索。 单击“”(从第一条记录开始)或“”(从当前记录开始)。 默认值是“”。


备注

当某个 宏 运行 FindRecord 操作时,Access 会搜索记录中的指定数据(搜索顺序由“搜索”参数的设置确定)。 当 Access 找到指定数据时,就会在记录中选中该数据。

FindRecord 操作等同于单击“开始”选项卡上的“查找”,其参数与“查找和替换”对话框中的选项相同。 如果在宏生成器窗格中设置了 FindRecord 参数,然后运行该宏,则单击“查找”时便会看到在“查找和替换”对话框中选择的相应选项。

在数据库会话过程中,Access 会保留最近的 FindRecord 参数,这样在执行后续的 FindRecord 操作时,就不需要重复输入相同的条件。 如果将某一参数保留为空,则 Access 会使用由前一个 FindRecord 操作设置的或在“查找和替换”对话框中设置的该参数的最近设置。

如果要使用宏来查找记录,请使用 FindRecord 操作(而不是 RunCommand 操作),并将其参数设置为运行“查找”命令。

注意: 虽然 FindRecord 操作与表、查询和窗体的“开始”选项卡上的“查找”命令相对应,但它并不与 代码窗口 中“编辑”菜单上的“查找”命令相对应。 不能使用 FindRecord 操作搜索模块中的文本。

如果在执行 FindRecord 操作时当前选择的文本与搜索文本相同,那么搜索会紧接所选内容之后在同一记录的同一字段中开始。 否则,搜索会从当前记录的开头开始。 这样就可以在单个记录中查找符合同一搜索条件的多个实例。

但是,请注意,如果使用 命令按钮 运行包含 FindRecord 操作的宏,则会重复查找符合该搜索条件的第一个实例。 出现这种情况是因为单击命令按钮时将从包含匹配值的字段中删除 焦点。 然后,FindRecord 操作就会从记录的开头部分开始搜索。 为了避免出现这个问题,请使用不更改焦点的方法(如自定义工具栏按钮或在 AutoKeys 宏中定义的组合键)来运行宏,或者,也可以在执行 FindRecord 操作前将宏中的焦点设置到包含搜索条件的字段上。

安全注释 : 避免使用 SendKeys 语句或包含敏感或机密信息的 AutoKeys 宏。 恶意用户可能会截获键击并危及你的计算机和数据的安全。

如果使用命令按钮运行包含 FindNext 操作的宏,也会出现相同的情况。

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

要进行更复杂的搜索,可能需要使用 SearchForRecord 宏操作。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×