Данные фильтра VBA

Excel VBA-фильтр

Фильтр VBA инструмент используется для сортировки или извлечения конкретных желаемых данных, функция автофильтра используется в качестве функции рабочего листа, однако эта функция имеет другие аргументы, которые являются необязательными, и единственным обязательным аргументом является выражение, которое охватывает диапазон, например рабочие листы ( «Лист1»). Диапазон («А1»). Автофильтр применит фильтр к первому столбцу.

Фильтр в VBA работает так же, как и на листе. Единственное отличие в том, что мы можем автоматизировать рутинную задачу фильтрации данных с помощью кодирования.

VBA-фильтр

Вы можете использовать это изображение на своем веб-сайте, в шаблонах и т. д. Пожалуйста, предоставьте нам ссылку на авторствоКак предоставить атрибуцию?Ссылка на статью должна быть гиперссылкой
Например:
Источник: данные фильтра VBA (wallstreetmojo.com).

Автофильтр — это функция, которая включает множество значений синтаксиса. Ниже приведены параметры, задействованные в функции автофильтра.

Синтаксис автофильтра
  • Диапазон это первое, что нам нужно предоставить, чтобы использовать опцию «Автофильтр». Это просто то, к какому диапазону ячеек нам нужно применить фильтр, например, к диапазону («A1:D50»).
  • Поле является первым аргументом функции. После выбора диапазона ячеек с помощью Объект VBA RANGEОбъект VBA RANGEДиапазон — это свойство в VBA, которое помогает указать конкретную ячейку, диапазон ячеек, строку, столбец или трехмерный диапазон. В контексте рабочего листа Excel объект диапазона VBA включает одну или несколько ячеек, распределенных по различным строкам и столбцам.читать далее, нам нужно указать, для какого столбца диапазона мы хотим применить фильтр.
  • Критерий 1 не что иное, как в избранном Поле, какое значение вы хотите отфильтровать.
  • Оператор используется в том случае, если вы хотите использовать Критерий 2 аргумент. В этом варианте мы можем использовать следующие параметры.
    xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues
  • Видимый раскрывающийся список заключается в том, отображать ли символ фильтра в столбце примененного фильтра или нет. Если вы хотите отобразить, вы можете указать аргумент как ИСТИНА или ЛОЖЬ.

Примеры фильтрации данных с помощью VBA

Вы можете скачать этот шаблон Excel фильтра VBA здесь — Шаблон Excel фильтра VBA

Пример № 1. Применение или удаление фильтра к данным

В случае, если вы хотите применить опцию фильтра к данным, мы можем отключить и включить эту опцию. Например, посмотрите на изображение данных ниже.

Удалить фильтр для данных 1
Шаг 1: Предоставьте диапазон данных

Чтобы сначала активировать опцию фильтра, нам нужно указать наш диапазон данных. На изображении выше наши данные распределены от A1 до G31, поэтому укажите этот диапазон с помощью объекта RANGE.

Код:

Sub Filter_Example()

  Range ("A1:G31")

End Sub
Удалить фильтр для данных 1-1
Шаг 2: Затем получите доступ к функции автофильтра

Теперь получите доступ к функции автофильтра для этого диапазона.

Код:

Sub Filter_Example()

  Range("A1:G31").AutoFilter

End Sub
Удалить фильтр для данных 1-2
Шаг 3. Запустите код, чтобы включить фильтр

Это все. Запустите этот код, чтобы включить автоматический фильтр.

Удалить фильтр для данных 1-3.

Этот код работает как переключатель, и если фильтр не применяется, то он будет применяться. Если уже применялся, то он удалит.

Пример № 2. Фильтрация определенных значений

Теперь мы увидим, как использовать параметры опции AutoFilter. Возьмите те же данные, что и выше. Например, теперь нам нужно отфильтровать все «мужские» гендерные имена.

Шаг 1: выберите диапазон и откройте функцию автофильтра
Фильтр конкретных значений 1
Шаг 2: Затем выберите поле

В первом аргументе функции, т.е. Поле, нам нужно указать ссылку на столбец, который мы хотели бы отфильтровать. В этом примере нам нужно отфильтровать только кандидатов «мужского пола», это столбец «C», поэтому номер столбца равен 3.

Фильтр конкретных значений 1-1
Шаг 3: Теперь укажите критерии

Теперь для этого предоставленного поля нам нужно упомянуть Критерий 1 т.е. какое значение нам нужно отфильтровать в упомянутом Поле. Нам нужно отфильтровать «Мужской» из этого столбца.

Код:

Sub Filter_Example()

  Range("A1:G31").AutoFilter Field:=3, Criteria1:="Male"

End Sub
Отфильтровать определенные значения 1-2
Шаг 4: И запустите код

Хорошо, это все. Этот код теперь будет фильтровать только кандидатов-мужчин.

Отфильтровать определенные значения 1-3

Пример №3 – Использование аргумента ОПЕРАТОР

Если вы хотите отфильтровать более одного значения из столбца, нам нужно использовать аргумент «Оператор». Например, из столбца «Основные» нам нужно отфильтровать только «Математика и политика», тогда нам нужно использовать этот аргумент.

Шаг 1: выберите диапазон и поле автофильтра

Сначала укажите диапазон ячеек и полей..

Код:

Sub Filter_Example()

 Range("A1:G31").AutoFilter Field:=5,

End Sub
Использование ОПЕРАТОРА Аргумент 1
Шаг 2: Введите Критерий 1 как Математика

Для указанного поля нам необходимо предоставить Критерий 1 как «Математика».

Код:

Sub Filter_Example()

 Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math",

End Sub
Использование ОПЕРАТОРА Аргумент 1-1
Шаг 3. Используйте оператор xl

Так как нам нужно отфильтровать еще одно значение из того же столбца или поле, использовать оператор как «xlOr».

Код:

Sub Filter_Example()

  Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math", 
  Operator:=xlOr

End Sub
Использование ОПЕРАТОРА Аргумент 1-2
Шаг 4: Введите Критерий 2 как Политику

И для Критерий 2 аргумент упоминает значение как «Политика».

Код:

Sub Filter_Example()

 Range("A1:G31").AutoFilter Field:=5, Criteria1:="Math",
 Operator:=xlOr, Criteria2:="Politics"

End Sub
Использование ОПЕРАТОРА Аргумент 1-3

Это отфильтрует как «Математика», так и «Политика» из столбца «Основные».

Пример использования функции строки 1-6

Пример № 4. Фильтрация чисел с символами оператора

Например, если вы хотите отфильтровать числа с помощью, то мы можем отфильтровать определенное число, а также числа выше, ниже или между определенными значениями и диапазоном значений.

Например, из столбца возраста, если вы хотите отфильтровать лиц старше 30 лет, мы можем написать код, как показано ниже.

Код:

Sub Filter_Example()

 Range("A1:G31").AutoFilter Field:=7, Criteria1:=">30"

End Sub

Это отфильтрует все значения, превышающие 30.

Номера фильтров Excel VBA 1

Теперь, если вы хотите отфильтровать значения от 21 до 31, мы можем использовать приведенный ниже код.

Код:

Sub Filter_Example()

 Range("A1:G31").AutoFilter Field:=7, Criteria1:=">21", 
 Operator:=xlAnd, Criteria2:="<31"

End Sub

Это позволит отфильтровать людей в возрасте от 21 до 30 лет.

Номера фильтров Excel VBA 1-1

Пример № 5. Применение фильтра для более чем одного столбца

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

Если вы хотите отфильтровать «Статус студента» как «Выпускник» и «Страна» как «США», то сначала нам нужно указать ДИАПАЗОН ячеек в операторе «С».

Код:

Sub Filter_Example()

  With Range("A1:G31")

  End With

End Sub
Пример 5

Теперь внутри оператора WITH укажите первые критерии для фильтрации.

Код:

Sub Filter_Example()

 With Range("A1:G31")
  .AutoFilter Field:=4, Criteria1:="Graduate"
 End With

End Sub
Пример 5-1

Теперь в следующей строке сделайте то же самое для «Страны», изменив «Поле» на 6 и «Критерии» на «США».

Код:

Sub Filter_Example()

 With Range("A1:G31")
  .AutoFilter Field:=4, Criteria1:="Graduate"
  .AutoFilter Field:=6, Criteria1:="US"
 End With

End Sub
Пример 5-2

Теперь это будет фильтровать «Выпускник» только для страны «США».

Пример 5-3

То, что нужно запомнить

  • Первым делом только для указанного диапазона ячеек будет применен фильтр.
  • Поле ничего, в каком столбце вы хотите отфильтровать данные.
  • В случае фильтрации значений из более чем одного столбца используйте С участием.

УЗНАТЬ БОЛЬШЕ >>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *