Как проверить, применён ли фильтр к листу в Excel?
Если лист содержит большой объём данных, можно ли быстро определить, применяется ли фильтрация к конкретному столбцу или ко всему листу — без ручной проверки каждого столбца? В этом руководстве мы покажем вам два кода VBA, которые помогут решить эту задачу.
Проверка применения фильтра к определённому столбцу
Проверка применения фильтра ко всему листу
Проверка применения фильтра к определённому столбцу
Чтобы убедиться, применяется ли фильтр к определённому столбцу, воспользуйтесь приведённым в этом разделе кодом VBA.
1. Откройте лист, на котором нужно проверить, применён ли фильтр к нужному столбцу.
2. Нажмите клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic for Applications.
3. В окне Microsoft Visual Basic for Applications выберите пункт Insert > Module, а затем скопируйте следующий код VBA в окно модуля (Code).

Код VBA: Проверка применения фильтра к указанному столбцу
Sub IsFilter()
'Updated by Extendoffice 20221025
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
xColumn = 3 'Here the number 3 stands for the third column (column C) in the current worksheet
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On And xAF.Range(1, xFNum).Column = xColumn Then
xBol = True
End If
Next xFNum
If xBol Then
MsgBox "The specified column is filled"
Else
MsgBox "The specified column is not filled"
End If
End Sub Примечание: В коде VBA число 3 в строке «xColumn = 3» обозначает третий столбец на текущем листе. Если вы хотите применить фильтр к столбцу E, замените число 3 на 5.
4. Нажмите клавишу F5, чтобы запустить код.
Если к указанному столбцу применён фильтр, откроется следующее диалоговое окно.

В противном случае откроется следующее диалоговое окно.


Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Проверка применения фильтра ко всему листу
Если вы хотите убедиться, применяется ли фильтр ко всему листу, воспользуйтесь кодом VBA из этого раздела.
1. Откройте лист, на котором нужно проверить применение фильтра.
2. Нажмите клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic for Applications.
3. В окне Microsoft Visual Basic for Applications выберите пункт Insert > Module, а затем скопируйте следующий код VBA в окно Module (Code).
Код VBA: Проверка применения фильтра ко всему листу
Sub IsFilterInWorkSheet()
'Updated by Extendoffice 20221024
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
On Error Resume Next
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On Then
xBol = True
Exit For
End If
Next xFNum
If xBol Then
MsgBox "Filter is applied in the curren worksheet"
Else
MsgBox "Filter does not apply in the current worksheet"
End If
End Sub 4. Затем нажмите клавишу F5, чтобы запустить этот код. Если на листе применён фильтр, появится следующее диалоговое окно.

В противном случае откроется следующее диалоговое окно.

Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек