- Slå av AutoFilter i det aktive regnearket i VBA
- Slå på AutoFilter i det aktive regnearket i VBA
- Slå av AutoFilter i alle regneark i VBA.
- Slå av AutoFilter i alle regneark i VBA.
- Fjern alle filtre i det aktive regnearket i VBA
- Fjern alle filtre i alle regneark i VBA
- Fjern alle filtre i en tabell i VBA
Denne opplæringen vil demonstrere hvordan du slår av /sletter autofilter i VBA.
Autofilter kan slås på eller av ved hjelp av VBA -kode.
Slå av AutoFilter i det aktive regnearket i VBA
Følgende kodeeksempel slår av AutoFilter i det aktive arket, og kontrollerer først at det ikke er av allerede.
12345 | Offentlig Sub KillFilter ()Hvis ActiveSheet.AutoFilterMode DaActiveSheet.AutoFilterMode = FalskSlutt omSlutt Sub |
Slå på AutoFilter i det aktive regnearket i VBA
Følgende kodeeksempel slår på AutoFilter i det aktive arket, og kontrollerer først at det ikke er på allerede.
12345 | Public Sub StartFilter ()If Not ActiveSheet.AutoFilterMode ThenActiveSheet.Range ("A1"). AutofilterSlutt omSlutt Sub |
Slå av AutoFilter i alle regneark i VBA.
Følgende kodeeksempel går gjennom hvert ark i hele arbeidsboken og slår av AutoFilter i hvert regneark, og kontrollerer først at filteret i den gjeldende arbeidsboken ikke allerede er på.
12345678 | Offentlig Sub StopAllFilters ()Dim ws Som regnearkFor hver gang i ActiveWorkbook.WorksheetsHvis ws.AutoFilterMode = True Thenws.AutoFilterMode = FalskSlutt omNeste wsSlutt Sub |
Slå av AutoFilter i alle regneark i VBA.
På samme måte går følgende kodeeksempel gjennom hele arbeidsboken og slår på AutoFilter i hvert ark, og kontrollerer først at filteret i den gjeldende arbeidsboken ikke allerede er på.
12345678 | Offentlig Sub StartAllFilters ()Dim ws Som regnearkFor hver gang i ActiveWorkbook.WorksheetsHvis ikke ws.AutoFilterMode Daws.Range ("A1"). AutofilterSlutt omNeste wsSlutt Sub |
Fjern alle filtre i det aktive regnearket i VBA
Følgende kodeeksempel lar autofilteret være slått på i det aktive arket, men sletter alle filter som brukes på dataene.
12345 | Offentlig del ClearFilter ()Hvis ActiveSheet.FilterMode = True ThenActiveSheet.ShowAllDataSlutt omSlutt Sub |
Fjern alle filtre i alle regneark i VBA
På samme måte går følgende kodeeksempel gjennom hele arbeidsboken og lar autofilteret være slått på i hvert ark hvis det allerede er på, men sletter alle filter som brukes på dataene.
12345678 | Offentlig Sub ClearAllFilters ()Dim ws Som regnearkFor hver gang i ActiveWorkbook.WorksheetsHvis ws.FilterMode = True Thenws.ShowAllDataSlutt omNeste wsSlutt Sub |
Fjern alle filtre i en tabell i VBA
Skulle regnearket vårt inneholde et tabellobjekt, kan vi justere koden for å slette filteret som brukes på filteret, mens AutoFilter er påslått.
123456789 | Sub ClearFilterFromTable ()Dim ws Som regnearkDim tabell som strengDim tabell som ListObjectsTable = "Tabell1"Sett ws = ActiveSheetSett loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataSlutt Sub |
Skulle tabellobjektet være knyttet til et pivottabell, vil pivottabellen oppdateres deretter.