- Lülitage automaatne filtreerimine välja VBA aktiivsel töölehel
- Lülitage automaatfilter sisse VBA aktiivsel töölehel
- Lülitage automaatfilter välja kõigis VBA töölehtedes.
- Lülitage automaatfilter välja kõigis VBA töölehtedes.
- Tühjendage kõik filtrid VBA aktiivsel töölehel
- Tühjenda kõik filtrid kõigist VBA töölehtedest
- Tühjendage VBA tabelis kõik filtrid
See õpetus näitab, kuidas automaatfiltreid VBA -s välja lülitada /kustutada.
Automaatfiltreid saab VBA koodi abil sisse või välja lülitada.
Lülitage automaatne filtreerimine välja VBA aktiivsel töölehel
Järgmine koodinäide lülitab automaatse filtri aktiivsel lehel välja, kontrollides kõigepealt, kas see pole juba välja lülitatud.
12345 | Avalik alamfilter ()Kui ActiveSheet.AutoFilterMode SiisActiveSheet.AutoFilterMode = ValeLõpp KuiEnd Sub |
Lülitage automaatfilter sisse VBA aktiivsel töölehel
Järgmine koodinäide lülitab automaatse filtri sisse aktiivses lehes, kontrollides kõigepealt, kas see pole juba sisse lülitatud.
12345 | Avalik alamfilter ()Kui pole ActiveSheet.AutoFilterMode SiisActiveSheet.Range ("A1"). Automaatne filterLõpp KuiEnd Sub |
Lülitage automaatfilter välja kõigis VBA töölehtedes.
Järgmine koodinäide vaatab läbi kogu töövihiku iga lehe ja lülitab igal töölehel automaatse filtri välja, kontrollides kõigepealt, kas praeguse töövihiku filter pole juba sisse lülitatud.
12345678 | Avalik alampeatusAllFilters ()Dim ws töölehenaIga tööpäeva jaoks ActiveWorkbookis. TöölehedKui ws.AutoFilterMode = Tõene siisws.AutoFilterMode = ValeLõpp KuiJärgmine wsEnd Sub |
Lülitage automaatfilter välja kõigis VBA töölehtedes.
Samamoodi loeb järgmine koodinäide läbi kogu töövihiku ja lülitab igal lehel sisse automaatse filtri, kontrollides kõigepealt, kas praeguse töövihiku filter pole juba sisse lülitatud.
12345678 | Avalik alam StartAllFilters ()Dim ws töölehenaIga tööpäeva jaoks ActiveWorkbookis. TöölehedKui ei, siis ws.AutoFilterMode thenws.Range ("A1"). Automaatne filterLõpp KuiJärgmine wsEnd Sub |
Tühjendage kõik filtrid VBA aktiivsel töölehel
Järgmine koodinäide jätab automaatse filtri sisse aktiivses lehes, kuid kustutab kõik filtrid, mis on andmetele rakendatud.
12345 | Avalik alamfilter ()Kui ActiveSheet.FilterMode = Tõene siisActiveSheet.ShowAllDataLõpp KuiEnd Sub |
Tühjenda kõik filtrid kõigist VBA töölehtedest
Samamoodi loeb järgmine koodinäide läbi kogu töövihiku ja jätab automaatse filtri igal lehel sisse, kui see on juba sisse lülitatud, kuid kustutab kõik filtrid, mis on andmetele rakendatud.
12345678 | Avalik alam ClearAllFilters ()Dim ws töölehenaIga tööpäeva jaoks ActiveWorkbookis. TöölehedKui ws.FilterMode = Tõene siisws.ShowAllDataLõpp KuiJärgmine wsEnd Sub |
Tühjendage VBA tabelis kõik filtrid
Kui meie tööleht sisaldab tabeliobjekti, saame koodi kohandada nii, et see tühjendab selle filtri jaoks rakendatud filtrid, jättes automaatse filtri sisselülitatuks.
123456789 | Alam ClearFilterFromTable ()Dim ws töölehenaHämardage tabel stringinaDim loBable kui ListObjectsTable = "Tabel1"Määra ws = ActiveSheetMäära loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataEnd Sub |
Kui tabeli objekt on lingitud Pivot -tabeliga, värskendatakse vastavalt ka Pivot -tabelit.