Πίνακας περιεχομένων
Το σεμινάριο δείχνει πώς να δημιουργείτε πολλαπλές δηλώσεις IF στο Excel με λογική AND καθώς και OR. Επίσης, θα μάθετε πώς να χρησιμοποιείτε το IF μαζί με άλλες συναρτήσεις του Excel.
Στο πρώτο μέρος του σεμιναρίου μας για το Excel IF, εξετάσαμε πώς να κατασκευάσετε μια απλή δήλωση IF με μία συνθήκη για κείμενο, αριθμούς, ημερομηνίες, κενά και μη κενά. Για ισχυρή ανάλυση δεδομένων, ωστόσο, μπορεί συχνά να χρειάζεται να αξιολογείτε πολλαπλές συνθήκες ταυτόχρονα. Τα παρακάτω παραδείγματα τύπων θα σας δείξουν τους πιο αποτελεσματικούς τρόπους για να το κάνετε αυτό.
Πώς να χρησιμοποιήσετε τη συνάρτηση IF με πολλαπλές συνθήκες
Στην ουσία, υπάρχουν δύο τύποι Τύπος IF με πολλαπλά κριτήρια με βάση τη λογική AND / OR Συνεπώς, στον λογικό έλεγχο του τύπου IF, θα πρέπει να χρησιμοποιήσετε μία από αυτές τις συναρτήσεις:
- Συνάρτηση AND - επιστρέφει TRUE αν όλοι οι όροι πληρούνται, διαφορετικά FALSE.
- Συνάρτηση OR - επιστρέφει TRUE αν οποιαδήποτε μεμονωμένη κατάσταση πληρούται, διαφορετικά FALSE.
Για να γίνει καλύτερα κατανοητό το θέμα, ας εξετάσουμε μερικά παραδείγματα τύπων από την πραγματική ζωή.
Excel IF statement με πολλαπλές συνθήκες (λογική AND)
Ο γενικός τύπος του Excel IF με δύο ή περισσότερες συνθήκες είναι ο εξής:
IF(AND( condition1 , condition2 , ...), value_if_true, value_if_false)Μεταφρασμένος σε ανθρώπινη γλώσσα, ο τύπος λέει: Αν η συνθήκη 1 είναι αληθής ΚΑΙ η συνθήκη 2 είναι αληθής, επιστρέψτε value_if_true ; else return value_if_false .
Ας υποθέσουμε ότι έχετε έναν πίνακα με τις βαθμολογίες δύο δοκιμασιών στις στήλες Β και Γ. Για να περάσει τις τελικές εξετάσεις, ο μαθητής πρέπει να έχει και τις δύο βαθμολογίες μεγαλύτερες από 50.
Για τη λογική δοκιμή, χρησιμοποιείτε την ακόλουθη δήλωση AND: AND(B2>50, C2>50)
Εάν και οι δύο συνθήκες είναι αληθείς, ο τύπος θα επιστρέψει "Pass" (επιτυχία).Εάν οποιαδήποτε συνθήκη είναι ψευδής - "Fail" (αποτυχία).
=IF(AND(B2>50, B2>50), "Pass", "Fail")
Εύκολο, έτσι δεν είναι; Το παρακάτω στιγμιότυπο οθόνης αποδεικνύει ότι ο τύπος IF /AND του Excel λειτουργεί σωστά:
Με παρόμοιο τρόπο, μπορείτε να χρησιμοποιήσετε τη συνάρτηση IF του Excel με πολλαπλές συνθήκες κειμένου .
Για παράδειγμα, για την έξοδο "Καλό" αν και οι δύο τιμές B2 και C2 είναι μεγαλύτερες από 50, και "Κακό" σε αντίθετη περίπτωση, ο τύπος είναι:
=IF(AND(B2="pass", C2="pass"), "Good!", "Bad")
Σημαντική σημείωση! Η συνάρτηση AND ελέγχει όλοι οι όροι Μια τέτοια συμπεριφορά είναι λίγο ασυνήθιστη, καθώς στις περισσότερες γλώσσες προγραμματισμού, οι επόμενες συνθήκες δεν ελέγχονται αν κάποια από τις προηγούμενες δοκιμές έχει επιστρέψει FALSE.
Στην πράξη, μια φαινομενικά σωστή δήλωση IF μπορεί να οδηγήσει σε σφάλμα λόγω αυτής της ιδιαιτερότητας. Για παράδειγμα, ο παρακάτω τύπος θα επέστρεφε #DIV/0! ("διαιρεί με το μηδέν" σφάλμα) εάν το κελί A2 είναι ίσο με 0:
=IF(AND(A20, (1/A2)>0.5), "Good", "Bad")
Για να το αποφύγετε αυτό, θα πρέπει να χρησιμοποιήσετε μια ένθετη συνάρτηση IF:
=IF(A20, IF((1/A2)>0.5, "Καλό", "Κακό"), "Κακό")
Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Τύπος IF AND στο Excel.
Συνάρτηση Excel IF με πολλαπλές συνθήκες (λογική OR)
Για να κάνετε ένα πράγμα αν οποιαδήποτε κατάσταση ικανοποιείται, διαφορετικά κάντε κάτι άλλο, χρησιμοποιήστε αυτόν τον συνδυασμό των συναρτήσεων IF και OR:
IF(OR( condition1 , condition2 , ...), value_if_true, value_if_false)Η διαφορά από τον τύπο IF / AND που συζητήθηκε παραπάνω είναι ότι το Excel επιστρέφει TRUE αν οποιαδήποτε από τις καθορισμένες συνθήκες είναι αληθής.
Έτσι, αν στον προηγούμενο τύπο, χρησιμοποιήσουμε OR αντί για AND:
=IF(OR(B2>50, B2>50), "Pass", "Fail")
Τότε όποιος έχει πάνω από 50 βαθμούς σε οποιαδήποτε από τις δύο εξετάσεις θα πάρει "Pass" στη στήλη D. Με τέτοιες συνθήκες, οι μαθητές μας έχουν περισσότερες πιθανότητες να περάσουν τις τελικές εξετάσεις (η Yvette είναι ιδιαίτερα άτυχη που απέτυχε μόλις με 1 βαθμό :)
Συμβουλή. Σε περίπτωση που δημιουργείτε ένα πολλαπλή δήλωση IF με κείμενο και δοκιμάζοντας μια τιμή σε ένα κελί με τη λογική OR (δηλαδή ένα κελί μπορεί να είναι "αυτό" ή "εκείνο"), τότε μπορείτε να δημιουργήσετε έναν πιο συμπαγή τύπο χρησιμοποιώντας μια σταθερά πίνακα.
Για παράδειγμα, για να χαρακτηρίσετε μια πώληση ως "κλειστή" εάν το κελί B2 είναι είτε "παραδοθεί" είτε "πληρωθεί", ο τύπος είναι:
=IF(OR(B2={"παραδοθείσα", "πληρωθείσα"}), "Κλειστό", "")
Περισσότερα παραδείγματα τύπων μπορείτε να βρείτε στο Excel IF OR function.
IF με πολλαπλές δηλώσεις AND & & OR
Εάν η εργασία σας απαιτεί την αξιολόγηση πολλών συνόλων πολλαπλών συνθηκών, θα πρέπει να χρησιμοποιήσετε ταυτόχρονα και τις δύο συναρτήσεις AND και OR.
Στον πίνακα του δείγματός μας, ας υποθέσουμε ότι έχετε τα ακόλουθα κριτήρια για τον έλεγχο των αποτελεσμάτων των εξετάσεων:
- Κατάσταση 1: exam1>50 και exam2>50
- Κατάσταση 2: εξέταση1>40 και εξέταση2>60
Εάν πληρούται μία από τις δύο προϋποθέσεις, η τελική εξέταση θεωρείται επιτυχής.
Εκ πρώτης όψεως, ο τύπος φαίνεται λίγο περίπλοκος, αλλά στην πραγματικότητα δεν είναι! Απλά εκφράζετε κάθε μία από τις παραπάνω συνθήκες ως δήλωση AND και τις εντάσσετε στη συνάρτηση OR (αφού δεν είναι απαραίτητο να ικανοποιούνται και οι δύο συνθήκες, αρκεί μία από τις δύο):
OR(AND(B2>50, C2>50), AND(B2>40, C2>60)
Στη συνέχεια, χρησιμοποιήστε τη συνάρτηση OR για τον λογικό έλεγχο του IF και δώστε το επιθυμητό value_if_true και value_if_false Ως αποτέλεσμα, λαμβάνετε τον ακόλουθο τύπο IF με πολλαπλές συνθήκες AND / OR:
=IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")
Το παρακάτω στιγμιότυπο οθόνης δείχνει ότι έχουμε κάνει τον τύπο σωστά:
Φυσικά, δεν περιορίζεστε στη χρήση μόνο δύο συναρτήσεων AND/OR στους τύπους IF. Μπορείτε να χρησιμοποιήσετε όσες από αυτές απαιτεί η επιχειρησιακή σας λογική, υπό την προϋπόθεση ότι:
- Στο Excel 2007 και νεότερες εκδόσεις, δεν έχετε περισσότερα από 255 ορίσματα και το συνολικό μήκος του τύπου IF δεν υπερβαίνει τους 8.192 χαρακτήρες.
- Στο Excel 2003 και νεότερες εκδόσεις, δεν υπάρχουν περισσότερα από 30 ορίσματα και το συνολικό μήκος του τύπου IF δεν υπερβαίνει τους 1.024 χαρακτήρες.
Ενσωματωμένη δήλωση IF για τον έλεγχο πολλαπλών λογικών δοκιμών
Αν θέλετε να αξιολογήσετε πολλαπλές λογικές δοκιμές μέσα σε έναν μόνο τύπο, τότε μπορείτε να τοποθετήσετε πολλές συναρτήσεις η μία μέσα στην άλλη. Τέτοιες συναρτήσεις ονομάζονται εμφωλευμένες συναρτήσεις IF Αποδεικνύονται ιδιαίτερα χρήσιμες όταν θέλετε να επιστρέφετε διαφορετικές τιμές ανάλογα με τα αποτελέσματα των λογικών δοκιμών.
Ακολουθεί ένα τυπικό παράδειγμα: ας υποθέσουμε ότι θέλετε να χαρακτηρίσετε τα επιτεύγματα των μαθητών ως " Καλή ", " Ικανοποιητικό " και " Φτωχό " με βάση τις ακόλουθες βαθμολογίες:
- Καλώς: 60 ή περισσότερο (>=60)
- Ικανοποιητικό: μεταξύ 40 και 60 (>40 και <60)
- Φτωχός: 40 ή λιγότερο (<=40)
Πριν γράψετε έναν τύπο, σκεφτείτε τη σειρά των συναρτήσεων που πρόκειται να φωλιάσετε. Το Excel θα αξιολογήσει τους λογικούς ελέγχους με τη σειρά που εμφανίζονται στον τύπο. Μόλις μια συνθήκη αξιολογηθεί ως TRUE, οι επόμενες συνθήκες δεν ελέγχονται, δηλαδή ο τύπος σταματά μετά το πρώτο αποτέλεσμα TRUE.
Στην περίπτωσή μας, οι συναρτήσεις διατάσσονται από τη μεγαλύτερη προς τη μικρότερη:
=IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))
Φυσικά, μπορείτε να ενσωματώσετε περισσότερες συναρτήσεις αν χρειαστεί (έως και 64 στις σύγχρονες εκδόσεις).
Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Πώς να χρησιμοποιήσετε πολλαπλές εμφωλευμένες δηλώσεις IF στο Excel.
Τύπος συστοιχίας Excel IF με πολλαπλές συνθήκες
Ένας άλλος τρόπος για να κάνετε ένα Excel IF να ελέγχει πολλαπλές συνθήκες είναι η χρήση ενός τύπου πίνακα.
Για να αξιολογήσετε συνθήκες με τη λογική AND, χρησιμοποιήστε τον αστερίσκο:
IF( condition1 ) * ( condition2 ) * ..., value_if_true, value_if_false)Για να ελέγξετε συνθήκες με τη λογική OR, χρησιμοποιήστε το σύμβολο συν:
IF( condition1 ) + ( condition2 ) + ..., value_if_true, value_if_false)Για να ολοκληρώσετε σωστά έναν τύπο πίνακα, πατήστε ταυτόχρονα τα πλήκτρα Ctrl + Shift + Enter. Στο Excel 365 και στο Excel 2021, αυτό λειτουργεί επίσης ως κανονικός τύπος λόγω της υποστήριξης δυναμικών πινάκων.
Για παράδειγμα, για να λάβετε "Πάσο" αν και οι δύο τιμές B2 και C2 είναι μεγαλύτερες από 50, ο τύπος είναι:
=IF((B2>50) * (C2>50), "Pass", "Fail")
Στο δικό μου Excel 365, ένας κανονικός τύπος λειτουργεί μια χαρά (όπως μπορείτε να δείτε στα παραπάνω στιγμιότυπα οθόνης). Στο Excel 2019 και μεταγενέστερα, θυμηθείτε να τον κάνετε τύπο συστοιχίας χρησιμοποιώντας τη συντόμευση Ctrl + Shift + Enter.
Για να αξιολογήσετε πολλαπλές συνθήκες με τη λογική OR, ο τύπος είναι:
=IF((B2>50) + (C2>50), "Pass", "Fail")
Χρήση του IF μαζί με άλλες λειτουργίες
Αυτή η ενότητα εξηγεί πώς να χρησιμοποιείτε το IF σε συνδυασμό με άλλες συναρτήσεις του Excel και ποια είναι τα οφέλη που σας προσφέρει αυτό.
Παράδειγμα 1. Εάν #N/A σφάλμα στο VLOOKUP
Όταν το VLOOKUP ή άλλη συνάρτηση αναζήτησης δεν μπορεί να βρει κάτι, επιστρέφει ένα σφάλμα #N/A. Για να κάνετε τους πίνακές σας να φαίνονται πιο όμορφοι, μπορείτε να επιστρέψετε μηδέν, κενό ή συγκεκριμένο κείμενο αν #N/A. Για το σκοπό αυτό, χρησιμοποιήστε αυτόν τον γενικό τύπο:
IF(ISNA(VLOOKUP(...)), value_if_na , VLOOKUP(...))Για παράδειγμα:
Αν #N/A επιστρέφει 0:
Εάν η τιμή αναζήτησης στο E1 δεν βρεθεί, ο τύπος επιστρέφει μηδέν.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))
Εάν #N/A επιστρέψετε κενό:
Εάν η τιμή αναζήτησης δεν βρεθεί, ο τύπος δεν επιστρέφει τίποτα (μια κενή συμβολοσειρά).
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))
Αν #N/A επιστρέφει συγκεκριμένο κείμενο:
Εάν η τιμή αναζήτησης δεν βρεθεί, ο τύπος επιστρέφει συγκεκριμένο κείμενο.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Δεν βρέθηκε", VLOOKUP(E1, A2:B10, 2, FALSE))
Για περισσότερα παραδείγματα τύπων, ανατρέξτε στην ενότητα VLOOKUP με δήλωση IF στο Excel.
Παράδειγμα 2. IF με τις συναρτήσεις SUM, AVERAGE, MIN και MAX
Για να αθροίσετε τις τιμές των κελιών με βάση ορισμένα κριτήρια, το Excel παρέχει τις συναρτήσεις SUMIF και SUMIFS.
Σε ορισμένες περιπτώσεις, η επιχειρησιακή σας λογική μπορεί να απαιτεί τη συμπερίληψη της συνάρτησης SUM στον λογικό έλεγχο του IF. Για παράδειγμα, για να επιστρέψετε διαφορετικές ετικέτες κειμένου ανάλογα με το άθροισμα των τιμών στα πεδία B2 και C2, ο τύπος είναι:
=IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))
Εάν το άθροισμα είναι μεγαλύτερο από 130, το αποτέλεσμα είναι "καλό", εάν είναι μεγαλύτερο από 110 - "ικανοποιητικό", εάν 110 ή μικρότερο - "φτωχό".
Με παρόμοιο τρόπο, μπορείτε να ενσωματώσετε τη συνάρτηση ΜΕΣΟΣ όρος στη λογική δοκιμή της IF και να επιστρέψετε διαφορετικές ετικέτες με βάση το μέσο όρο της βαθμολογίας:
=IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))
Υποθέτοντας ότι η συνολική βαθμολογία βρίσκεται στη στήλη D, μπορείτε να προσδιορίσετε την υψηλότερη και τη χαμηλότερη τιμή με τη βοήθεια των συναρτήσεων MAX και MIN:
=IF(D2=MAX($D$2:$D$10), "Καλύτερο αποτέλεσμα", "")
=IF(D2=MAX($D$2:$D$10), "Καλύτερο αποτέλεσμα", "")
Για να έχετε και τις δύο ετικέτες σε μία στήλη, τοποθετήστε τις παραπάνω συναρτήσεις τη μία μέσα στην άλλη:
=IF(D2=MAX($D$2:$D$10), "Καλύτερο αποτέλεσμα", IF(D2=MIN($D$2:$D$10), "Χειρότερο αποτέλεσμα", ""))
Ομοίως, μπορείτε να χρησιμοποιήσετε το IF μαζί με τις προσαρμοσμένες συναρτήσεις σας. Για παράδειγμα, μπορείτε να το συνδυάσετε με το GetCellColor ή το GetCellFontColor για να επιστρέψετε διαφορετικά αποτελέσματα με βάση το χρώμα ενός κελιού.
Επιπλέον, το Excel παρέχει έναν αριθμό συναρτήσεων για τον υπολογισμό δεδομένων βάσει συνθηκών. Για λεπτομερή παραδείγματα τύπων, ανατρέξτε στα ακόλουθα σεμινάρια:
- COUNTIF - καταμέτρηση των κυττάρων που πληρούν μια συνθήκη
- COUNTIFS - καταμέτρηση κελιών με πολλαπλά κριτήρια
- SUMIF - αθροίζει υπό όρους τα κελιά
- SUMIFS - άθροισμα κελιών με πολλαπλά κριτήρια
Παράδειγμα 3. IF με ISNUMBER, ISTEXT και ISBLANK
Για τον εντοπισμό κειμένου, αριθμών και κενών κελιών, το Microsoft Excel παρέχει ειδικές συναρτήσεις όπως ISTEXT, ISNUMBER και ISBLANK. Τοποθετώντας τις στις λογικές δοκιμές τριών εμφωλευμένων εντολών IF, μπορείτε να προσδιορίσετε όλους τους διαφορετικούς τύπους δεδομένων με μία κίνηση:
=IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))
Παράδειγμα 4. IF και CONCATENATE
Για να εξάγετε το αποτέλεσμα της IF και κάποιο κείμενο σε ένα κελί, χρησιμοποιήστε τις συναρτήσεις CONCATENATE ή CONCAT (στο Excel 2016 - 365) και IF μαζί. Για παράδειγμα:
=CONCATENATE("Είχατε καλή απόδοση ", IF(B1>100, "φανταστική!", IF(B1>50, "καλά", "κακή"))))
=CONCAT("Είχατε καλή απόδοση ", IF(B1>100, "φανταστική!", IF(B1>50, "καλά", "κακή")))
Κοιτάζοντας το παρακάτω στιγμιότυπο οθόνης, δύσκολα θα χρειαστείτε κάποια εξήγηση για το τι κάνει ο τύπος:
Τύπος IF ISERROR / ISNA στο Excel
Οι σύγχρονες εκδόσεις του Excel διαθέτουν ειδικές συναρτήσεις για την παγίδευση των σφαλμάτων και την αντικατάστασή τους με έναν άλλο υπολογισμό ή μια προκαθορισμένη τιμή - IFERROR (στο Excel 2007 και μεταγενέστερες εκδόσεις) και IFNA (στο Excel 2013 και μεταγενέστερες εκδόσεις). Σε παλαιότερες εκδόσεις του Excel, μπορείτε να χρησιμοποιήσετε τους συνδυασμούς IF ISERROR και IF ISNA.
Η διαφορά είναι ότι τα IFERROR και ISERROR χειρίζονται όλα τα πιθανά σφάλματα του Excel, συμπεριλαμβανομένων των #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! και #NULL!. Ενώ τα IFNA και ISNA ειδικεύονται αποκλειστικά στα σφάλματα #N/A.
Για παράδειγμα, για να αντικαταστήσετε το σφάλμα "divide by zero" (#DIV/0!) με το δικό σας προσαρμοσμένο κείμενο, μπορείτε να χρησιμοποιήσετε τον ακόλουθο τύπο:
=IF(ISERROR(A2/B2), "N/A", A2/B2)
Και αυτά είναι όλα όσα έχω να πω για τη χρήση της συνάρτησης IF στο Excel. Σας ευχαριστώ για την ανάγνωση και ελπίζω να σας δω στο blog μας την επόμενη εβδομάδα!
Βιβλίο ασκήσεων για κατέβασμα
Excel IF πολλαπλά κριτήρια - παραδείγματα (.xlsx αρχείο)