Τύπος Excel: ΦΙΛΤΡΟ με πολύπλοκα πολλαπλά κριτήρια -

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

Περίληψη

Για να φιλτράρετε και να εξαγάγετε δεδομένα βάσει πολλαπλών σύνθετων κριτηρίων, μπορείτε να χρησιμοποιήσετε τη συνάρτηση FILTER με μια αλυσίδα εκφράσεων που χρησιμοποιούν λογική boolean. Στο παράδειγμα που εμφανίζεται, ο τύπος στο G5 είναι:

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4))

Αυτός ο τύπος επιστρέφει δεδομένα όπου:

ο λογαριασμός ξεκινά με "x" ΚΑΙ η περιοχή είναι "ανατολική" και ο μήνας ΔΕΝ είναι Απρίλιος.

Εξήγηση

Σε αυτό το παράδειγμα, πρέπει να κατασκευάσουμε λογική που φιλτράρει τα δεδομένα ώστε να περιλαμβάνει:

ο λογαριασμός ξεκινά με "x" ΚΑΙ η περιοχή είναι "ανατολική" και ο μήνας ΔΕΝ είναι Απρίλιος.

Η λογική φιλτραρίσματος αυτού του τύπου (το όρισμα include) δημιουργείται με αλυσοδέτηση τριών εκφράσεων που χρησιμοποιούν λογική boolean σε πίνακες στα δεδομένα. Η πρώτη έκφραση χρησιμοποιεί τη συνάρτηση LEFT για να ελέγξει εάν ο λογαριασμός ξεκινά με "x":

LEFT(B5:B16)="x" // account begins with "x"

Το αποτέλεσμα είναι ένας πίνακας τιμών TRUE FALSE όπως:

(TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE)

Η δεύτερη έκφραση ελέγχει εάν η περιοχή είναι "ανατολικά" με τον ίσο με (=) τελεστή:

C5:C16="east" // region is east

Το αποτέλεσμα είναι ένας άλλος πίνακας:

(FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE)

Η τρίτη έκφραση χρησιμοποιεί τη συνάρτηση MONTH με τη συνάρτηση NOT για να ελέγξει εάν ο μήνας δεν είναι Απρίλιος:

NOT(MONTH(D5:D16)=4) // month is not april

που αποδίδει:

(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)

Σημειώστε ότι η συνάρτηση NOT αντιστρέφει το αποτέλεσμα από την έκφραση MONTH.

Και οι τρεις πίνακες πολλαπλασιάζονται μαζί. Η μαθηματική λειτουργία αναγκάζει τις τιμές TRUE και FALSE σε 1s και 0s, οπότε σε αυτό το σημείο μπορούμε να απεικονίσουμε το όρισμα include όπως αυτό:

(1;0;1;1;1;0;0;0;1;1;0;1)* (0;0;1;1;1;0;1;0;0;1;0;1)* (0;0;0;1;1;1;1;1;1;1;1;1)

Ο δυαδικός πολλαπλασιασμός αντιστοιχεί στη λογική συνάρτηση AND, οπότε το τελικό αποτέλεσμα είναι ένας μοναδικός πίνακας όπως αυτό:

(0;0;0;1;1;0;0;0;0;1;0;1)

Η συνάρτηση FILTER χρησιμοποιεί αυτόν τον πίνακα για να φιλτράρει τα δεδομένα και επιστρέφει τις τέσσερις σειρές που αντιστοιχούν με το 1s στον πίνακα.

Επέκταση κριτηρίων

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

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4)*(E5:E16>10000))

ενδιαφέροντα άρθρα...