Макрокоманда «ПоискЗаписи»

Применяется к
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

С помощью макрокоманды ПоискЗаписи можно найти определенную запись в таблице, запросе, форме или отчете классической базы данных Access.

Настройка

Макрокоманда ПоискЗаписи имеет следующие аргументы:

Аргумент макрокоманды Описание
Тип объекта Выберите или введите тип объекта базы данных, в котором будет выполняться поиск. Можно выбрать значение Таблица, Запрос, Форма или Отчет.
Имя объекта Введите или выберите объект, содержащий искомую запись. Раскрывающийся список содержит все объекты базы данных с типом, заданным в аргументе Тип объекта.
Запись Укажите начало и направление поиска.
  • Предыдущей: Поиск в обратном направлении от текущей записи.
  • Следующий Поиск вперед из текущей записи.
  • Первый: Поиск вперед из первой записи. Это значение по умолчанию.
  • Последний: Выполните поиск в обратном направлении от последней записи.
Условие отбора Введите условия поиска, используя синтаксис предложения WHERE инструкции SQL, только без слова WHERE. Например:
Description = "Beverages"
Чтобы создать условие, содержащее значение из текстового поля в форме, следует написать выражение, объединяющее первую часть условия с именем текстового поля, содержащего значение, по которому будет проводиться поиск. Например, в следующем условии будет выполняться поиск в поле Description по значению текстового поля txtDescription в форме frmCategories. Обратите внимание на знак равенства (=) в начале выражения и одинарные кавычки (') по обе стороны ссылки на текстовое поле:
="Description = '" & Forms![frmCategories]![txtDescription] & "'"

Примечания

  • Если более чем одна запись соответствует условию, заданному в аргументе Условие отбора, на результат поиска могут оказать влияние следующие факторы:

    • Значение аргумента "Запись". Дополнительные сведения об аргументе Запись см. в таблице в разделе "Настройка".
    • Порядок сортировки записей. Например, если аргумент Запись имеет значение Первая, изменение порядка сортировки записей может отразиться на том, какая запись будет найдена.
  • Объект, заданный в аргументе Имя объекта, должен быть открыт до выполнения команды. В противном случае произойдет ошибка.

  • Если условие, заданное в аргументе Условие отбора, не выполняется, это не считается ошибкой, а фокус остается на текущей записи.

  • При поиске последующей или предыдущей записи поиск не продолжается, когда достигается конец данных. Если больше нет записей, соответствующих условию отбора, это не считается ошибкой, а фокус остается на текущей записи. Чтобы подтвердить обнаружение совпадения, можно ввести условие для следующей команды и сделать его таким же, как значение аргумента Условие отбора.

  • Для запуска макрокоманды ПоискЗаписи в модуле VBA используйте метод SearchForRecord объекта DoCmd.

  • Макрокоманда аналогична ПоискЗаписи макрокоманде НайтиЗапись, но у ПоискЗаписи более широкие возможности поиска. Макроманда НайтиЗапись в основном используется для поиска строк, и ее функции аналогичны возможностям диалогового окна Найти. В макрокоманде ПоискЗаписи используются условия, которые больше напоминают фильтр или запрос SQL. Вот некоторые возможности макрокоманды ПоискЗаписи:

    • В аргументе Условие отбора могут использоваться составные условия, например:

Description = "Напитки" and CategoryID = 11

  • Можно ссылаться на поля, которые существуют в источнике записей формы или отчета, но не отображаются в них. В предыдущем примере ни, ни DescriptionCategoryID не должны отображаться в форме или отчете, чтобы критерии работали.
  • Можно использовать логические операторы, такие как <, >, AND, OR и BETWEEN. Макрокоманда НайтиЗапись ищет только строки, равные искомой строке, начинающиеся с нее или содержащие ее.

Пример

Следующий макрос открывает таблицу Categories с помощью команды ОткрытьТаблицу. Затем с помощью команды ПоискЗаписи ищется первая запись таблицы, в поле Description которой содержится значение "Напитки".

Действие Аргументы
ОткрытьТаблицу Имя таблицы: Categories
Режим: Таблица
Режим данных: Изменение
ПоискЗаписи Тип объекта: Таблица
Имя объекта: Categories
Запись: Первая
Условие отбора: Description = "Напитки"