Дія макросу «Застосувати фільтр»

За допомогою дії Застосуватифільтр можна застосувати до фільтр, запит або речення SQL WHERE до таблиці, форми або звіту, щоб обмежити або сортувати записи в таблиці, її базовій таблиці або запиті форми чи звіту. Для звітів цю дію можна використовувати тільки в макросі, заданому властивістю події звіту OnOpen.

Примітка : Якщо за допомогою цієї дії потрібно застосувати речення SQL WHERE, це можна зробити лише після застосування фільтра сервера. Фільтр сервера не можна застосувати до джерела записів збереженої процедури.

Примітка : У веб-програмах Access дія макросу "Застосуватифільтр" недоступна.

Настройка

Дія Застосуватифільтр має зазначені нижче аргументи.

Аргумент дії

Опис

Ім’я фільтра

Ім’я фільтра або запиту, за допомогою якого можна обмежити або відсортувати записи таблиці, форми чи звіту. У полі Ім’я фільтра в розділі Аргументи дії області конструктора макросів можна ввести ім’я наявного запиту або фільтру, який збережено як запит.

Примітка : Якщо ця дія використовується, щоб застосувати фільтр сервера, аргумент Ім’я фільтра має бути пустим.

Умова відбору

Дійсне речення SQL WHERE (без слова WHERE) або вираз, що обмежує записи з таблиці, форми або звіту.

Примітка : У виразі аргументу Умова відбору ліва частина виразу зазвичай містить ім’я поля з базової таблиці або запиту для форми або звіту. У правій частині виразу зазвичай містяться умови, які потрібно застосувати до цього поля, щоб обмежити чи сортувати записи. Наприклад, умовами може бути ім’я елемента керування з іншої форми, що містить значення, якому мають відповідати записи в першій формі. Ім’я елемента керування має бути повним, наприклад:

Форми!ім’я_форми!ім’я_елемента_керування

Імена полів слід взяти в подвійні лапки, а рядкові літерали – в одинарні лапки.

Максимальна довжина аргументу Умова відбору – 255 символів. Якщо потрібно ввести довше речення SQL WHERE, скористайтеся методом ApplyFilter об’єкта DoCmd у модулі Visual Basic for Applications (VBA). У модулі VBA можна ввести речення SQL WHERE довжиною не більше 32 768 символів.


Примітка : Якщо вже визначено фільтр, який містить відповідні дані, можна використати аргумент Ім’я фільтра. Аргумент Умова відбору можна використовувати, щоб безпосередньо ввести умови обмеження. Якщо використовуються обидва аргументи, програма Access застосовує речення WHERE до результатів фільтра. Потрібно використовувати один або обидва аргументи.

Примітки

Фільтр або запит можна застосовувати до форми в поданні форми або вікні табличного подання даних.

Застосовані фільтр і умова відбору стають настройкою властивості Фільтр або Фільтр сервера форми або звіту.

Для таблиці або форми ця дія подібна до вибору пункту Застосувати фільтр/сортування або Застосувати серверний фільтр у меню Записи. Команда меню дає змогу застосувати нещодавно створений фільтр до таблиці або форми, тоді як дія Застосуватифільтр використовується, щоб застосувати вказаний фільтр або запит.

Якщо навести вказівник миші на елемент Фільтр у меню Записи бази даних Access, а потім вибрати пункт Розширений фільтр/сортування після виконання дії Застосуватифільтр, на вкладці "Розширений фільтр" з’являться умови фільтра, вибрані за допомогою цієї дії.

Щоб видалити фільтр і відобразити всі записи для таблиці або форми в базі даних Access, можна використати дію Відобразитивсізаписи або команду Видалити фільтр або сортування в меню записів. Щоб видалити фільтр у проектах Access. (ADP), можна повернутися до вікна "cерверне фільтрування за формою" і видалити всі умови фільтрування, а потім натиснути кнопку Застосувати серверний фільтр у меню Записи на панелі інструментів або задати для властивості Фільтрсерверазаформою значення False (0).

Якщо зберегти таблицю або форму, програма Access збереже всі визначені фільтри для цього об’єкта, але не застосовуватиме фільтр автоматично, коли об’єкт буде відкрито наступного разу. У той же час усі умови сортування, застосовані до об’єкта перед його збереженням, застосовуються автоматично. Якщо потрібно автоматично застосувати фільтр, коли форма відкривається вперше, укажіть макрос, який містить дію Застосуватифільтр або процедуру події. У цій дії або процедурі події метод ApplyFilter об’єкта DoCmd має бути заданий як настройка властивості події форми OnOpen. Фільтр можна застосувати за допомогою дії Відкритиформу або Відкритизвіт, а також за допомогою методів, що відповідають цим діями. Щоб застосовувати фільтр автоматично, коли таблиця відкривається вперше, можна відкрити таблицю за допомогою макросу, що містить дію Відкрититаблицю, безпосередньо після якої виконується дія Застосуватифільтр.

Приклад

Застосування фільтра за допомогою макросу

Наведений нижче макрос містить набір дій, кожна з яких фільтрує записи форми "Список телефонів клієнтів". Він демонструє використання дій Застосуватифільтр, Відобразитивсізаписи та Перейтидоелементакерування. Він також показує, як за допомогою умов визначити, яку кнопку-перемикач у групі елементів керування вибрано у формі. Кожен рядок дії пов’язано з кнопкою-перемикачем, яка використовується для вибору набору записів, починаючи з A, B, C тощо, або всіх записів. Цей макрос має бути вкладено в подію AfterUpdate групи елементів керування "Фільтр_назв_компаній".

Умова

Дія

Аргументи: Настройка

Примітка

[Фільтри_назв_компаній]=1

Застосуватифільтр

Умова відбору: [Назва_компанії] Like "[AÀÁÂÃÄ]*"

Фільтр для назв компаній, які починаються з букв A, À, Á, Â, Ã або Ä.

[Фільтри_назв_компаній]=2

Застосуватифільтр

Умова відбору: [Назва_компанії] Like "B*"

Фільтр для назв компаній, які починаються з букви B.

[Фільтри_назв_компаній]=3

Застосуватифільтр

Умова відбору: [Назва_компанії] Like "[CÇ]*"

Фільтр для назв компаній, які починаються з букви C або Ç.

... Рядки дій для букв від D до Y мають такий самий формат, для букв від A до C...

[Фільтри_назв_компаній]=26

Застосуватифільтр

Умова відбору: [Назва_компанії] Like "[ZÆØÅ]*"

Фільтр для назв компаній, які починаються з букви Z, Æ, Ø або Å.

[Фільтри_назв_компаній]=27

Відобразитивсізаписи

Відобразити всі записи.

[RecordsetClone].[RecordCount]>0

Перейтидоелементакерування

Ім’я елемента керування: Назва_компанії

Якщо для вибраної букви повертаються записи, фокус переміщується до елемента керування "Назва_компанії".


Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо за відгук! Схоже, вам може стати в нагоді допомога одного з наших спеціалістів служби підтримки Office, з яким ми вас можемо з’єднати.

×