Απενεργοποίηση αυτόματου φίλτρου από κώδικα - Παραδείγματα κώδικα VBA

Πίνακας περιεχομένων

Αυτό το σεμινάριο θα δείξει πώς να απενεργοποιήσετε /καθαρίσετε τα Αυτόματα φίλτρα στο VBA.

Τα αυτόματα φίλτρα μπορούν να ενεργοποιηθούν ή να απενεργοποιηθούν χρησιμοποιώντας τον κώδικα VBA.

Απενεργοποιήστε το Αυτόματο φίλτρο στο Ενεργό φύλλο εργασίας στο VBA

Το ακόλουθο παράδειγμα κώδικα απενεργοποιεί το Αυτόματο φίλτρο στο Ενεργό φύλλο, ελέγχοντας πρώτα ότι δεν είναι ήδη Απενεργοποιημένο.

12345 Public Sub KillFilter ()Αν ActiveSheet.AutoFilterMode ΤότεActiveSheet.AutoFilterMode = ΛάθοςΤέλος εανΤέλος υπο

Ενεργοποιήστε το Αυτόματο φίλτρο στο Ενεργό φύλλο εργασίας στο VBA

Το ακόλουθο παράδειγμα κώδικα ενεργοποιεί το Αυτόματο φίλτρο στο Ενεργό φύλλο, ελέγχοντας πρώτα ότι δεν είναι ήδη ενεργοποιημένο.

12345 Public Sub StartFilter ()If Not ActiveSheet.AutoFilterMode ΤότεΕύρος ActiveSheet.Range ("A1"). Αυτόματο φίλτροΤέλος εανΤέλος υπο

Απενεργοποιήστε το Αυτόματο φίλτρο σε όλα τα φύλλα εργασίας στο VBA.

Το ακόλουθο παράδειγμα κώδικα περνάει σε κάθε φύλλο σε ολόκληρο το βιβλίο εργασίας και απενεργοποιεί το Αυτόματο φίλτρο σε κάθε φύλλο εργασίας, ελέγχοντας πρώτα ότι το φίλτρο στο τρέχον βιβλίο εργασίας δεν είναι ήδη ενεργοποιημένο.

12345678 Public Sub StopAllFilters ()Dim ws Ως φύλλο εργασίαςΓια κάθε ws Στο ActiveWorkbook.WorksheetsΑν ws.AutoFilterMode = True Τότεws.AutoFilterMode = ΛάθοςΤέλος εανΕπόμενο wsΤέλος υπο

Απενεργοποιήστε το Αυτόματο φίλτρο σε όλα τα φύλλα εργασίας στο VBA.

Ομοίως, το ακόλουθο παράδειγμα κώδικα περνάει σε ολόκληρο το βιβλίο εργασίας και ενεργοποιεί το Αυτόματο φίλτρο σε κάθε φύλλο, ελέγχοντας πρώτα ότι το φίλτρο στο τρέχον βιβλίο εργασίας δεν είναι ήδη ενεργοποιημένο.

12345678 Public Sub StartAllFilters ()Dim ws Ως φύλλο εργασίαςΓια κάθε ws Στο ActiveWorkbook.WorksheetsΑν όχι ws.AutoFilterMode Τότεws.Range ("A1"). Αυτόματο φίλτροΤέλος εανΕπόμενο wsΤέλος υπο

Εκκαθάριση όλων των φίλτρων στο ενεργό φύλλο εργασίας στο VBA

Το ακόλουθο παράδειγμα κώδικα αφήνει το Αυτόματο φίλτρο ενεργοποιημένο στο Ενεργό φύλλο, αλλά διαγράφει κάθε φίλτρο που εφαρμόζεται στα δεδομένα.

12345 Public Sub ClearFilter ()Αν ActiveSheet.FilterMode = True ΤότεActiveSheet.ShowAllDataΤέλος εανΤέλος υπο

Εκκαθάριση όλων των φίλτρων σε όλα τα φύλλα εργασίας στο VBA

Ομοίως, το ακόλουθο παράδειγμα κώδικα περνάει σε ολόκληρο το βιβλίο εργασίας και αφήνει το Αυτόματο φίλτρο ενεργοποιημένο σε κάθε φύλλο εάν είναι ήδη ενεργοποιημένο, αλλά διαγράφει κάθε φίλτρο που εφαρμόζεται στα δεδομένα.

12345678 Public Sub ClearAllFilters ()Dim ws Ως φύλλο εργασίαςΓια κάθε ws Στο ActiveWorkbook.WorksheetsΕάν ws.FilterMode = True Τότεws.ShowAllDataΤέλος εανΕπόμενο wsΤέλος υπο

Εκκαθάριση όλων των φίλτρων σε έναν πίνακα σε VBA

Εάν το φύλλο εργασίας μας περιέχει ένα αντικείμενο πίνακα, μπορούμε να προσαρμόσουμε τον κώδικα για να καθαρίσουμε απλώς οποιοδήποτε φίλτρο εφαρμόζεται σε αυτό το φίλτρο, ενώ αφήνουμε το Αυτόματο φίλτρο ενεργοποιημένο.

123456789 Sub ClearFilterFromTable ()Dim ws Ως φύλλο εργασίαςDim sTable As StringDim loTable As ListObjectsTable = "Πίνακας 1"Ορισμός ws = ActiveSheetΟρισμός loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataΤέλος υπο

Εάν το αντικείμενο του πίνακα συνδεθεί με έναν Συγκεντρωτικό πίνακα, τότε ο Συγκεντρωτικός πίνακας θα ανανεωθεί ανάλογα.

wave wave wave wave wave