Поделиться через


Макрокоманда SetFilter

Область применения: Access 2013, Office 2013

Действие SetFilter можно использовать для применения фильтра к записям в активной таблице, форме, отчете или таблице.

Setting

Аргументы действия SetFilter приведены ниже.

Аргумент макрокоманды Описание
Имя фильтра Если указано, имя запроса или фильтра, сохраненного в качестве запроса. Этот аргумент или аргумент WhereCondition является обязательным в клиентской базе данных. В веб-базе данных этот аргумент недоступен.
Условие where Если это указано, предложение SQL WHERE, которое ограничивает записи в таблице, форме, отчете или таблице. В веб-базе данных этот аргумент является обязательным.
Контрольное имя Если это указано, имя элемента управления, соответствующее подчиненной форме или вложенного отчета для фильтрации. Если он пуст, текущий объект фильтруется.

Замечания

В веб-базе данных аргумент Where Condition не может начинаться со знака равенства (=).

При выполнении этого действия фильтр применяется к таблице, форме, отчету или таблице (например, результату запроса), которые являются активными и имеют фокус.

Свойство Filter активного объекта используется для сохранения аргумента WhereCondition и его последующего применения. Фильтры сохраняются вместе с объектами, в которых они создаются. Они автоматически загружаются при открытии объекта, но не применяются автоматически.

В клиентской базе данных для автоматического применения фильтра при открытии объекта задайте для свойства FilterOnLoad значение True.

В веб-базе данных, чтобы автоматически применить фильтр при открытии объекта, добавьте действие SetFilter в макрос и добавьте макрос в событие OnLoad объекта.

Пример

В следующем примере показано, как использовать действие SetFilter для фильтрации формы, в которой определен макрос.

Пример кода изсправочника программиста Microsoft Access 2010.

    OpenForm
        Form Name sfrmFoods
        View Form
        Filter Name
        Where Condition
        Data Mode
        Window Mode Normal
    
    SetFilter
        Filter Name
        Where Condition =[display_name] Like "*cheese*"
        Control Name