Τύπος Excel: IF με λογική λογικής -

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

Γενική φόρμουλα

= IF(criteria1*criteria2*criteria3,result)

Περίληψη

Στο παράδειγμα που εμφανίζεται, ο τύπος στο F8 είναι:

(=SUM(IF((color="red")*(region="East")*(quantity>7),quantity)))

Σημείωση: αυτός είναι ένας τύπος πίνακα και πρέπει να εισαχθεί με τον έλεγχο + shift + enter.

Εξήγηση

Σημείωση: Αυτό το παράδειγμα δείχνει πώς μπορείτε να αντικαταστήσετε έναν ένθετο τύπο IF με ένα μόνο IF σε έναν τύπο πίνακα χρησιμοποιώντας λογική boolean. Αυτή η τεχνική μπορεί να χρησιμοποιηθεί για τη μείωση της πολυπλοκότητας σε σύνθετους τύπους. Ωστόσο, το παράδειγμα είναι μόνο για απεικόνιση. Αυτό το συγκεκριμένο πρόβλημα θα μπορούσε εύκολα να λυθεί με SUMIFS ή SUMPRODUCT.

Οι τύποι στα F7 και F8 επιστρέφουν το ίδιο αποτέλεσμα, αλλά έχουν διαφορετικές προσεγγίσεις. Στο κελί F7, έχουμε τον ακόλουθο τύπο, χρησιμοποιώντας μια ένθετη προσέγγιση IF:

(=SUM(IF(color="red",IF(region="east",IF(quantity>7,quantity)))))

Έτσι το Excel αξιολογεί τα IF μέσα στο SUM:

=IF((TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE), IF((TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE), IF((FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE),quantity)))

Στην ουσία, κάθε IF "φιλτράρει" τιμές στο επόμενο IF και μόνο οι ποσότητες όπου και οι τρεις λογικές δοκιμές επιστρέφουν TRUE "επιβιώνουν" της λειτουργίας. Άλλες ποσότητες γίνονται FALSE και αξιολογούνται από το SUM ως μηδέν. Το τελικό αποτέλεσμα στο SUM είναι μια σειρά τιμών όπως αυτή:

=SUM((FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;8;FALSE;10))

Οι τιμές FALSE αξιολογούνται στο μηδέν και η συνάρτηση SUM επιστρέφει ένα τελικό αποτέλεσμα 18.

Στο F8 έχουμε αυτόν τον τύπο, ο οποίος χρησιμοποιεί μια μοναδική λογική IF και boolean:

=SUM(IF((color="red")*(region="East")*(quantity>7),quantity))

Κάθε λογική παράσταση επιστρέφει έναν πίνακα τιμών TRUE και FALSE. Όταν αυτοί οι πίνακες πολλαπλασιάζονται μαζί, η λειτουργία μαθηματικών συγκεντρώνει τιμές σε αυτές και μηδενικά σε έναν πίνακα όπως:

IF((0;0;0;0;0;0;1;0;1),quantity)

Ο πίνακας 1s και 0s φιλτράρει άσχετα δεδομένα και το ίδιο αποτέλεσμα παραδόθηκε στο SUM:

=SUM((FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;8;FALSE;10))

Όπως και πριν, το SUM επιστρέφει ένα τελικό αποτέλεσμα 18.

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