- Искључите АутоФилтер на активном радном листу у ВБА
- Укључите Аутофилтер на активном радном листу у ВБА
- Искључите Аутофилтер на свим радним листовима у ВБА.
- Искључите Аутофилтер на свим радним листовима у ВБА.
- Обришите све филтере на активном радном листу у ВБА
- Обришите све филтере на свим радним листовима у ВБА
- Обришите све филтере у табели у ВБА
Овај водич ће показати како искључити /избрисати аутоматске филтере у ВБА.
Аутофилтери се могу укључити или искључити помоћу ВБА кода.
Искључите АутоФилтер на активном радном листу у ВБА
Следећи пример кода искључује Аутофилтер у активном листу, прво проверавајући да већ није искључен.
12345 | Јавни под КиллФилтер ()Ако је АцтивеСхеет.АутоФилтерМоде ЗатимАцтивеСхеет.АутоФилтерМоде = НетачноКрај АкоЕнд Суб |
Укључите Аутофилтер на активном радном листу у ВБА
Следећи пример кода укључује Аутофилтер у активном листу, прво проверавајући да већ није укључен.
12345 | Јавни помоћни почетни филтер ()Ако није АцтивеСхеет.АутоФилтерМоде ЗатимАцтивеСхеет.Ранге ("А1"). АутофилтерКрај АкоЕнд Суб |
Искључите Аутофилтер на свим радним листовима у ВБА.
Следећи пример кода пролази кроз сваки лист у целој радној свесци и искључује Аутофилтер на сваком радном листу, прво проверавајући да ли филтер у тренутној радној свесци већ није укључен.
12345678 | Публиц Суб СтопАллФилтерс ()Дим вс Ас ВорксхеетЗа сваки вс у АцтивеВоркбоок.ВорксхеетсАко је вс.АутоФилтерМоде = Тачновс.АутоФилтерМоде = НетачноКрај АкоНект всЕнд Суб |
Искључите Аутофилтер на свим радним листовима у ВБА.
Слично, следећи пример кода пролази кроз целу радну свеску и укључује Аутофилтер на сваком листу, прво проверавајући да ли филтер у тренутној радној свесци већ није укључен.
12345678 | Јавни подмени СтартАллФилтерс ()Дим вс Ас ВорксхеетЗа сваки вс у АцтивеВоркбоок.ВорксхеетсАко није вс.АутоФилтерМоде Ондавс.Ранге ("А1"). АутофилтерКрај АкоНект всЕнд Суб |
Обришите све филтере на активном радном листу у ВБА
Следећи пример кода оставља АутоФилтер укљученим у активном листу, али брише све филтере који се примењују на податке.
12345 | Публиц Суб ЦлеарФилтер ()Ако је АцтивеСхеет.ФилтерМоде = ТачноАцтивеСхеет.СховАллДатаКрај АкоЕнд Суб |
Обришите све филтере на свим радним листовима у ВБА
Слично, следећи пример кода пролази кроз целу радну свеску и оставља укључен Аутофилтер на сваком листу ако је већ укључен, али брише све филтере који се примењују на податке.
12345678 | Јавни под ЦлеарАллФилтерс ()Дим вс Ас ВорксхеетЗа сваки вс у АцтивеВоркбоок.ВорксхеетсАко је вс.ФилтерМоде = Тачновс.СховАллДатаКрај АкоНект всЕнд Суб |
Обришите све филтере у табели у ВБА
Ако наш радни лист садржи објекат табеле, можемо прилагодити код тако да само обрише сваки филтер који се примени на тај филтер, а да АутоФилтер остане укључен.
123456789 | Суб ЦлеарФилтерФромТабле ()Дим вс Ас ВорксхеетДим сТабле Ас СтрингЗатамните таблицу као ЛистОбјецтсТабле = "Табела1"Поставите вс = АцтивеСхеетПостави лоТабле = вс.ЛистОбјецтс (сТабле)лоТабле.АутоФилтер.СховАллДатаЕнд Суб |
Ако би објект табеле био повезан са изведеном табелом, изведена табела би се у складу с тим освежила.