Изключете автофилтъра от код - Примери за код на VBA

Този урок ще покаже как да изключите /изчистите автофилтрите във VBA.

Автофилтрите могат да се включват или изключват с помощта на VBA код.

Изключете автофилтъра в активния работен лист във VBA

Следният пример за код изключва автофилтъра в активния лист, като първо проверява дали вече не е изключен.

12345 Публичен под KillFilter ()Ако ActiveSheet.AutoFilterMode ТогаваActiveSheet.AutoFilterMode = FalseКрай АкоEnd Sub

Включете автофилтъра в активния работен лист във VBA

Следният пример за код включва Автофилтър в активния лист, като първо проверява дали вече не е включен.

12345 Public Sub StartFilter ()Ако не е ActiveSheet.AutoFilterMode ТогаваActiveSheet.Range ("A1"). АвтофилтърКрай АкоEnd Sub

Изключете автофилтъра във всички работни листове във VBA.

Следният пример за код преминава през всеки лист в цялата работна книга и изключва автофилтъра във всеки работен лист, като първо проверява дали филтърът в текущата работна книга вече не е включен.

12345678 Public Sub StopAllFilters ()Затъмнете като работен листЗа всеки ws в ActiveWorkbook.WorksheetsАко ws.AutoFilterMode = Вярно Тогаваws.AutoFilterMode = FalseКрай АкоСледващата wsEnd Sub

Изключете автофилтъра във всички работни листове във VBA.

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

12345678 Public Sub StartAllFilters ()Затъмнете като работен листЗа всеки ws в ActiveWorkbook.WorksheetsАко не ws.AutoFilterMode Тогаваws.Range ("A1"). АвтофилтърКрай АкоСледващата wsEnd Sub

Изчистете всички филтри в активния работен лист във VBA

Следният пример за код оставя автофилтъра включен в активния лист, но изчиства всеки филтър, който се прилага към данните.

12345 Public Sub ClearFilter ()Ако ActiveSheet.FilterMode = True ТогаваActiveSheet.ShowAllDataКрай АкоEnd Sub

Изчистете всички филтри във всички работни листове във VBA

По подобен начин следният пример за код преминава през цялата работна книга и оставя автофилтъра включен във всеки лист, ако вече е включен, но изчиства всеки филтър, който се прилага към данните.

12345678 Public Sub ClearAllFilters ()Затъмнете като работен листЗа всеки ws в ActiveWorkbook.WorksheetsАко ws.FilterMode = Вярно, тогаваws.ShowAllDataКрай АкоСледващата wsEnd Sub

Изчистете всички филтри в таблица във VBA

Ако нашият работен лист съдържа обект на таблица, можем да коригираме кода, така че просто да изчисти всеки филтър, който е приложен към този филтър, като оставим автофилтъра включен.

123456789 Sub ClearFilterFromTable ()Затъмнете като работен листDim sTable As StringЗатъмнете таблицата като ListObjectsTable = "Таблица1"Задайте ws = ActiveSheetЗадайте loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataEnd Sub

Ако обектът на таблицата е свързан с обобщена таблица, тогава обобщената таблица ще се опресни съответно.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave