Як очистити фільтри в excel за допомогою vba (з прикладом)
Ви можете використовувати такий синтаксис у VBA, щоб очистити всі фільтри з аркуша Excel:
SubClearFilters ()
If ActiveSheet.AutoFilterMode Then ActiveSheet.ShowAllData
End Sub
Цей конкретний макрос очистить усі фільтри з поточного активного аркуша.
Цей макрос працює за допомогою методу ShowAllData , щоб примусово зробити всі приховані рядки видимими.
Якщо на активному аркуші наразі не відфільтровано жодного рядка, під час запуску цього макросу нічого не станеться.
У наступному прикладі показано, як використовувати цей макрос на практиці.
Приклад: очистити всі фільтри в Excel за допомогою VBA
Припустімо, у нас є такий набір даних у Excel, який містить інформацію про різних баскетболістів:
Тепер припустімо, що ми додаємо фільтр, щоб показувати лише ті рядки, де значення в стовпці Team дорівнює Mavs або Nets:
Тепер припустімо, що ми хочемо очистити цей фільтр за допомогою VBA.
Для цього ми можемо створити такий макрос:
SubClearFilters ()
If ActiveSheet.AutoFilterMode Then ActiveSheet.ShowAllData
End Sub
Коли ми запускаємо цей макрос, фільтр автоматично очищається з аркуша:
Зауважте, що всі раніше приховані рядки тепер знову видимі, оскільки ми очистили фільтр.
Примітка . Ви можете знайти повну документацію для методу VBA ShowAllData тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: як фільтрувати зведені таблиці
VBA: як оновити зведені таблиці
VBA: як видалити повторювані значення