Как выборочно скрыть стрелки автофильтра в Excel

Что делает макрос: Само собой разумеется, что функция AutoFilter в Excel является одной из самых полезных. Единственная проблема заключается в том, что стандартная функциональность AutoFilter применяет стрелки раскрывающегося списка к каждому столбцу в выбранном наборе данных. Хорошей новостью является то, что с макросом VBA, вы можете выборочно скрыть стрелки автофильтра раскрывающегося списка.

Как макрос работает

В VBA, мы можем использовать объект AutoFilter, чтобы включить автофильтры для определенного диапазона. Например:

Range("B5:G5").AutoFilter

После того, как применится автофильтр, мы можем манипулировать с каждой колонкой в Автофильтре. Например, вы можете выполнить некоторые действия на третьей колонке в Автофильтре, вот так:

Range("B5:G5").AutoFilter Field:3

Вы можете выполнять множество действий на поле Автофильтр. В этом случае, мы заинтересованы сделать стрелки раскрывающегося списка невидимыми в поле. Для этого мы можем использовать параметр VisibleDropDown. Установка этого параметра в значение False делает стрелку раскрывающегося списка невидимой.

Range("B5:G5").AutoFilter Field:3,
VisibleDropDown:=False

Код макроса

Пример макроса, где мы включаем автофильтры, а затем делаем видимыми только первую и последнюю раскрывающиеся стрелки .

Sub SkritStrelkiAvtofiltra()
With Range("B5:G5")
.AutoFilter
.AutoFilter Field:=1, VisibleDropDown:=True
.AutoFilter Field:=2, VisibleDropDown:=False
.AutoFilter Field:=3, VisibleDropDown:=False
.AutoFilter Field:=4, VisibleDropDown:=False
.AutoFilter Field:=5, VisibleDropDown:=False
.AutoFilter Field:=6, VisibleDropDown:=True
End With
End Sub

Как использовать

Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:

  1. Активируйте редактор Visual Basic, нажав ALT + F11.
  2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код.
Оцените статью
Добавить комментарий