- Izklopite samodejni filter na aktivnem delovnem listu v VBA
- Vklopite samodejni filter na aktivnem delovnem listu v VBA
- Izklopite samodejni filter na vseh delovnih listih v VBA.
- Izklopite samodejni filter na vseh delovnih listih v VBA.
- Počistite vse filtre na aktivnem delovnem listu v VBA
- Počisti vse filtre na vseh delovnih listih v VBA
- Počistite vse filtre v tabeli v VBA
Ta vadnica bo pokazala, kako izklopiti /počistiti samodejne filtre v VBA.
Samodejne filtre lahko vklopite ali izklopite s kodo VBA.
Izklopite samodejni filter na aktivnem delovnem listu v VBA
Naslednji primer kode izklopi samodejni filter v aktivnem listu in najprej preveri, ali še ni izklopljen.
12345 | Javni pomožni filter KillFilter ()Če ActiveSheet.AutoFilterMode PotemActiveSheet.AutoFilterMode = FalseKonec ČeEnd Sub |
Vklopite samodejni filter na aktivnem delovnem listu v VBA
Naslednji primer kode vklopi samodejni filter v aktivnem listu in najprej preveri, ali še ni vklopljen.
12345 | Javni podzačetni filter ()Če ni ActiveSheet.AutoFilterMode PotemActiveSheet.Range ("A1"). Samodejni filterKonec ČeEnd Sub |
Izklopite samodejni filter na vseh delovnih listih v VBA.
Naslednji primer kode se prelevi skozi vsak list v celotnem delovnem zvezku in izklopi samodejni filter na vsakem delovnem listu ter najprej preveri, ali filter v trenutnem delovnem zvezku še ni vklopljen.
12345678 | Public Sub StopAllFilters ()Zatemni kot delovni listZa vsako ws v ActiveWorkbook.WorksheetsČe je ws.AutoFilterMode = True, potemws.AutoFilterMode = NapačnoKonec ČeNaslednji wsEnd Sub |
Izklopite samodejni filter na vseh delovnih listih v VBA.
Podobno se naslednji primer kode prelista skozi celoten delovni zvezek in vklopi samodejni filter na vsakem listu ter najprej preveri, ali filter v trenutnem delovnem zvezku še ni vklopljen.
12345678 | Javni podzagonAllFilters ()Zatemni kot delovni listZa vsako ws v ActiveWorkbook.WorksheetsČe ne ws.AutoFilterMode Potemws.Range ("A1"). Samodejni filterKonec ČeNaslednji wsEnd Sub |
Počistite vse filtre na aktivnem delovnem listu v VBA
V naslednjem primeru kode je samodejni filter vklopljen v aktivnem listu, vendar počisti vse filtre, ki so uporabljeni za podatke.
12345 | Javni pod ClearFilter ()Če je ActiveSheet.FilterMode = True, potemActiveSheet.ShowAllDataKonec ČeEnd Sub |
Počisti vse filtre na vseh delovnih listih v VBA
Podobno naslednji primer kode prelista celoten delovni zvezek in pusti samodejni filter vklopljen na vsakem listu, če je že vklopljen, vendar počisti vse filtre, ki so uporabljeni za podatke.
12345678 | Javni podčisti ClearAllFilters ()Zatemni kot delovni listZa vsako ws v ActiveWorkbook.WorksheetsČe je ws.FilterMode = True, potemws.ShowAllDataKonec ČeNaslednji wsEnd Sub |
Počistite vse filtre v tabeli v VBA
Če naš delovni list vsebuje predmet tabele, lahko kodo prilagodimo tako, da počistimo vse filtre, ki so uporabljeni za ta filter, pri tem pa pustimo samodejni filter vklopljen.
123456789 | Sub ClearFilterFromTable ()Zatemni kot delovni listZatemni tabelo kot nizZatemni tablico kot ListObjectsTable = "Tabela1"Nastavite ws = ActiveSheetNastavi loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataEnd Sub |
Če bi bil predmet tabele povezan s vrtilno tabelo, bi se vrtilna tabela ustrezno osvežila.