Проверьте, полностью ли скрыт диапазон автофильтра - PullRequest
0 голосов
/ 29 мая 2020

В моем листе Excel у меня есть фильтр Row 28 для всех остальных строк ниже.
Теперь я хочу проверить, все ли строки скрыты под Row 28. Поэтому я пошел с решением из этого вопроса здесь :

Sub Check_filter_visibility()
If Sheet1.Range("A28:A10000").SpecialCells(xlCellTypeVisible).Count > 1 Then
Sheet1.Range("A1").Value = 1
Else
Sheet1.Range("A1").Value = 2
End If
End Sub

Все это работает нормально.


Теперь вместо определенного диапазона Sheet1.Range("A28:A10000") Я хочу включить весь диапазон AutoFilter.
Поэтому я попытался использовать go с помощью этой функции:

Sub Check_filter_visibility()
If AutoFilter.Range.Offset(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
Sheet1.Range("A1").Value = 1
Else
Sheet1.Range("A1").Value = 2
End If
End Sub

Однако с этим решением я получаю runtime error 424.
Есть ли другой способ проверить, все ли ячейки в AutoFilter скрыты независимо от определенного диапазона?

1 Ответ

0 голосов
/ 29 мая 2020

Как уже было описано в комментариях, решение:

Sub Check_filter_visibility()
If Sheet1.AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
Sheet1.Range("A1").Value = 1
Else
Sheet1.Range("A1").Value = 2
End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...