Πίνακας περιεχομένων
Σε αυτό το άρθρο, θα μάθετε πώς να δημιουργείτε μια δήλωση IF του Excel για διαφορετικούς τύπους τιμών, καθώς και πώς να δημιουργείτε πολλαπλές δηλώσεις IF.
Η IF είναι μια από τις πιο δημοφιλείς και χρήσιμες συναρτήσεις του Excel. Γενικά, χρησιμοποιείτε μια δήλωση IF για να ελέγξετε μια συνθήκη και να επιστρέψετε μια τιμή εάν η συνθήκη ικανοποιείται και μια άλλη τιμή εάν η συνθήκη δεν ικανοποιείται.
Σε αυτό το σεμινάριο, θα μάθουμε τη σύνταξη και τις συνήθεις χρήσεις της συνάρτησης IF του Excel, και στη συνέχεια θα εξετάσουμε προσεκτικά παραδείγματα τύπων που ελπίζουμε ότι θα αποδειχθούν χρήσιμα τόσο σε αρχάριους όσο και σε έμπειρους χρήστες.
Συνάρτηση IF στο Excel
Η IF είναι μια από τις λογικές συναρτήσεις που αξιολογεί μια συγκεκριμένη συνθήκη και επιστρέφει μια τιμή αν η συνθήκη είναι TRUE και μια άλλη τιμή αν η συνθήκη είναι FALSE.
Η σύνταξη της συνάρτησης IF έχει ως εξής:
IF(logical_test, [value_if_true], [value_if_false])Όπως βλέπετε, η IF δέχεται συνολικά 3 ορίσματα, αλλά μόνο το πρώτο είναι υποχρεωτικό, ενώ τα άλλα δύο είναι προαιρετικά.
Λογική_δοκιμή (υποχρεωτικό) - η συνθήκη προς δοκιμή. Μπορεί να αξιολογηθεί ως TRUE ή FALSE.
Value_if_true (προαιρετικό) - η τιμή που επιστρέφεται όταν η λογική δοκιμή καταλήγει σε TRUE, δηλαδή όταν η συνθήκη ικανοποιείται. Αν παραλειφθεί, η επιλογή value_if_false πρέπει να οριστεί.
Value_if_false (προαιρετικό) - η τιμή που επιστρέφεται όταν η λογική δοκιμή καταλήγει σε FALSE, δηλαδή η συνθήκη δεν ικανοποιείται. Αν παραλειφθεί, η value_if_true πρέπει να οριστεί.
Βασικός τύπος IF στο Excel
Για να δημιουργήσετε ένα απλό Αν τότε στο Excel, αυτό είναι που πρέπει να κάνετε:
- Για το logical_test , γράψτε μια έκφραση που επιστρέφει είτε TRUE είτε FALSE. Για το σκοπό αυτό, κανονικά θα χρησιμοποιούσατε έναν από τους λογικούς τελεστές.
- Για το value_if_true , καθορίζουν τι θα επιστρέφεται όταν η λογική δοκιμή αποτιμάται σε TRUE.
- Για το value_if_false , καθορίζουν τι θα επιστρέφεται όταν η λογική δοκιμή αξιολογείται ως FALSE. Αν και αυτό το επιχείρημα είναι προαιρετικό, συνιστούμε να το ρυθμίζετε πάντα για να αποφεύγονται απροσδόκητα αποτελέσματα. Για λεπτομερή εξήγηση, ανατρέξτε στην ενότητα Excel IF: πράγματα που πρέπει να γνωρίζετε.
Ως παράδειγμα, ας γράψουμε έναν πολύ απλό τύπο IF που ελέγχει μια τιμή στο κελί A2 και επιστρέφει "Καλό" αν η τιμή είναι μεγαλύτερη από 80, "Κακό" αλλιώς:
=IF(B2>80, "Good", "Bad")
Αυτός ο τύπος πηγαίνει στο C2 και στη συνέχεια αντιγράφεται μέχρι το C7:
Σε περίπτωση που θέλετε να επιστρέψετε μια τιμή μόνο όταν ικανοποιείται (ή δεν ικανοποιείται) η συνθήκη, διαφορετικά - τίποτα, τότε χρησιμοποιήστε ένα κενό αλφαριθμητικό ("") για το όρισμα "undefined". Για παράδειγμα:
=IF(B2>80, "Good", "")
Αυτός ο τύπος θα επιστρέψει το "Good" αν η τιμή στο A2 είναι μεγαλύτερη από 80, διαφορετικά ένα κενό κελί:
Τύπος του Excel If then: πράγματα που πρέπει να γνωρίζετε
Αν και οι δύο τελευταίες παράμετροι της συνάρτησης IF είναι προαιρετικές, ο τύπος σας μπορεί να παράγει απροσδόκητα αποτελέσματα αν δεν γνωρίζετε την υποκείμενη λογική.
Εάν η value_if_true παραλείπεται
Εάν το 2ο όρισμα του τύπου IF του Excel σας παραλείπεται (δηλαδή υπάρχουν δύο διαδοχικά κόμματα μετά τον λογικό έλεγχο), θα λάβετε μηδέν (0) όταν ικανοποιείται η συνθήκη, πράγμα που δεν έχει νόημα στις περισσότερες περιπτώσεις. Ακολουθεί ένα παράδειγμα ενός τέτοιου τύπου:
=IF(B2>80, , "Bad")
Για να επιστρέψετε ένα κενό κελί, δώστε μια κενή συμβολοσειρά ("") για τη δεύτερη παράμετρο, όπως εδώ:
=IF(B2>80, "", "Bad")
Το παρακάτω στιγμιότυπο οθόνης δείχνει τη διαφορά:
Εάν η value_if_false παραλείπεται
Η παράλειψη της 3ης παραμέτρου του IF θα παράγει τα ακόλουθα αποτελέσματα όταν η λογική δοκιμή αξιολογείται ως FALSE.
Αν υπάρχει μόνο μια κλειστή αγκύλη μετά το value_if_true , η συνάρτηση IF θα επιστρέψει τη λογική τιμή FALSE. Αρκετά απροσδόκητο, έτσι δεν είναι; Ακολουθεί ένα παράδειγμα ενός τέτοιου τύπου:
=IF(B2>80, "Good")
Πληκτρολογώντας ένα κόμμα μετά το value_if_true όρισμα θα αναγκάσει το Excel να επιστρέψει 0, πράγμα που επίσης δεν έχει νόημα:
=IF(B2>80, "Good",)
Η πιο λογική προσέγγιση είναι η χρήση μιας συμβολοσειράς μηδενικού μήκους ("") για να λαμβάνετε ένα κενό κελί όταν η συνθήκη δεν ικανοποιείται:
=IF(B2>80, "Good", "")
Συμβουλή. Για να επιστρέψετε μια λογική τιμή όταν ικανοποιείται ή δεν ικανοποιείται η καθορισμένη συνθήκη, δώστε TRUE για το value_if_true και FALSE για value_if_false Για να είναι τα αποτελέσματα τιμές Boolean που μπορούν να αναγνωρίσουν άλλες συναρτήσεις του Excel, μην περικλείετε τις TRUE και FALSE σε διπλά εισαγωγικά, καθώς αυτό θα τις μετατρέψει σε κανονικές τιμές κειμένου.
Χρήση της συνάρτησης IF στο Excel - παραδείγματα τύπων
Τώρα που είστε εξοικειωμένοι με τη σύνταξη της συνάρτησης IF, ας δούμε μερικά παραδείγματα τύπων και ας μάθουμε πώς να χρησιμοποιούμε τη συνάρτηση Αν τότε δηλώσεις σε πραγματικά σενάρια.
Συνάρτηση Excel IF με αριθμούς
Για να δημιουργήσετε μια δήλωση IF για αριθμούς, χρησιμοποιήστε λογικούς τελεστές όπως:
- Ίσο με (=)
- Δεν ισούται με ()
- Μεγαλύτερο από (>)
- Μεγαλύτερο ή ίσο με (>=)
- Λιγότερο από (<)
- Λιγότερο ή ίσο με (<=)
Παραπάνω, έχετε ήδη δει ένα παράδειγμα ενός τέτοιου τύπου που ελέγχει αν ένας αριθμός είναι μεγαλύτερος από έναν δεδομένο αριθμό.
Και εδώ είναι ένας τύπος που ελέγχει αν ένα κελί περιέχει ένα αρνητικός αριθμός :
=IF(B2<0, "Invalid", "")
Για αρνητικούς αριθμούς (οι οποίοι είναι μικρότεροι από 0), ο τύπος επιστρέφει την ένδειξη "Άκυρο".Για μηδενικά και θετικούς αριθμούς - ένα κενό κελί.
Συνάρτηση Excel IF με κείμενο
Συνήθως, γράφετε μια δήλωση IF για τιμές κειμένου χρησιμοποιώντας είτε τον τελεστή "ίσο με" είτε τον τελεστή "μη ίσο με".
Για παράδειγμα, ο ακόλουθος τύπος ελέγχει το Κατάσταση παράδοσης στο Β2 για να καθοριστεί αν απαιτείται ή όχι μια ενέργεια:
=IF(B2="παραδοτέο", "Όχι", "Ναι")
Μεταφρασμένος σε απλά αγγλικά, ο τύπος λέει: επιστρέψτε "Όχι" εάν το B2 είναι ίσο με "παραδοτέο", "Ναι" διαφορετικά.
Ένας άλλος τρόπος για να επιτύχετε το ίδιο αποτέλεσμα είναι να χρησιμοποιήσετε τον τελεστή "not equal to" και να ανταλλάξετε τα value_if_true και value_if_false αξίες:
=IF(C2 "παραδοτέα", "Ναι", "Όχι")
Σημειώσεις:
- Όταν χρησιμοποιείτε τιμές κειμένου για τις παραμέτρους του IF, θυμηθείτε να τις περικλείετε πάντα σε διπλά εισαγωγικά .
- Όπως οι περισσότερες άλλες συναρτήσεις του Excel, Το IF δεν λαμβάνει υπόψη την πεζότητα από προεπιλογή Στο παραπάνω παράδειγμα, δεν κάνει διάκριση μεταξύ των όρων "παραδοθεί", "παραδοθεί" και "ΠΑΡΑΔΟΘΗΚΕ".
Δήλωση IF με ευαισθησία στην πεζότητα για τιμές κειμένου
Για να αντιμετωπίσετε τα κεφαλαία και τα πεζά γράμματα ως διαφορετικούς χαρακτήρες, χρησιμοποιήστε την IF σε συνδυασμό με τη συνάρτηση EXACT, η οποία είναι ευαίσθητη στην πεζότητα.
Για παράδειγμα, για να επιστρέψετε το "Όχι" μόνο όταν το B2 περιέχει το "DELIVERED" (κεφαλαίο), θα χρησιμοποιούσατε αυτόν τον τύπο:
=IF(EXACT(B2, "DELIVERED"), "No", "Yes")
Εάν το κελί περιέχει μερικό κείμενο
Σε περίπτωση που θέλετε να βασίσετε τη συνθήκη σε μερικό ταίριασμα αντί για ακριβή αντιστοιχία, μια άμεση λύση που έρχεται στο μυαλό είναι η χρήση μπαλαντέρ στη λογική δοκιμή. Ωστόσο, αυτή η απλή και προφανής προσέγγιση δεν θα λειτουργήσει. Πολλές συναρτήσεις δέχονται μπαλαντέρ, αλλά δυστυχώς το IF δεν είναι μία από αυτές.
Μια λειτουργική λύση είναι η χρήση IF σε συνδυασμό με ISNUMBER και SEARCH (χωρίς ευαισθησία στην πεζότητα) ή FIND (με ευαισθησία στην πεζότητα).
Για παράδειγμα, σε περίπτωση που απαιτείται ενέργεια "Όχι" τόσο για τα στοιχεία "Παραδόθηκε" όσο και για τα στοιχεία "Έξω για παράδοση", ο ακόλουθος τύπος θα λειτουργήσει άψογα:
=IF(ISNUMBER(SEARCH("deliv", B2)), "No", "Yes")
Για περισσότερες πληροφορίες, δείτε:
- Δήλωση Excel IF για μερική αντιστοίχιση κειμένου
- Εάν το κελί περιέχει τότε
Δήλωση Excel IF με ημερομηνίες
Εκ πρώτης όψεως, μπορεί να φαίνεται ότι οι τύποι IF για ημερομηνίες είναι όμοιοι με τις εντολές IF για αριθμητικές τιμές και τιμές κειμένου. Δυστυχώς, δεν είναι έτσι. Σε αντίθεση με πολλές άλλες συναρτήσεις, η IF αναγνωρίζει τις ημερομηνίες σε λογικές δοκιμές και τις ερμηνεύει ως απλές συμβολοσειρές κειμένου. Με άλλα λόγια, δεν μπορείτε να δώσετε μια ημερομηνία με τη μορφή "1/1/2020" ή ">1/1/2020". Για να κάνετε τη συνάρτηση IF να αναγνωρίσει μια ημερομηνία, πρέπει να την τυλίξετε σετη συνάρτηση DATEVALUE.
Για παράδειγμα, δείτε πώς μπορείτε να ελέγξετε αν μια δεδομένη ημερομηνία είναι μεγαλύτερη από μια άλλη ημερομηνία:
=IF(B2>DATEVALUE("7/18/2022"), "Σύντομα", "Ολοκληρώθηκε")
Αυτός ο τύπος αξιολογεί τις ημερομηνίες στη στήλη Β και επιστρέφει την ένδειξη "Σύντομα" αν ένα παιχνίδι έχει προγραμματιστεί για τις 18 Ιούλ-2022 ή αργότερα, την ένδειξη "Ολοκληρώθηκε" για μια προηγούμενη ημερομηνία.
Φυσικά, τίποτα δεν σας εμποδίζει να εισάγετε την ημερομηνία-στόχο σε ένα προκαθορισμένο κελί (π.χ. E2) και να αναφέρεστε σε αυτό το κελί. Απλά θυμηθείτε να κλειδώσετε τη διεύθυνση του κελιού με το σύμβολο $ για να γίνει απόλυτη αναφορά. Για παράδειγμα:
=IF(B2>$E$2, "Σύντομα", "Ολοκληρώθηκε")
Για να συγκρίνετε μια ημερομηνία με το τρέχουσα ημερομηνία , χρησιμοποιήστε τη συνάρτηση TODAY(). Για παράδειγμα:
=IF(B2>TODAY(), "Σύντομα", "Ολοκληρώθηκε")
Δήλωση Excel IF για κενά και μη κενά
Αν θέλετε να επισημάνετε με κάποιο τρόπο τα δεδομένα σας με βάση ένα ή περισσότερα συγκεκριμένα κελιά που είναι κενά ή όχι, μπορείτε είτε:
- Χρησιμοποιήστε τη συνάρτηση IF σε συνδυασμό με την ISBLANK, ή
- Χρησιμοποιήστε τις λογικές εκφράσεις (ίσο με κενό) ή "" (μη ίσο με κενό).
Ο παρακάτω πίνακας εξηγεί τη διαφορά μεταξύ αυτών των δύο προσεγγίσεων με παραδείγματα τύπων.
Λογική δοκιμή | Περιγραφή | Παράδειγμα τύπου | |
Κενά κελιά | ="" | Αποτιμάται σε TRUE αν ένα κελί είναι οπτικά άδειο, ακόμη και αν περιέχει ένα συμβολοσειρά μηδενικού μήκους . Διαφορετικά, αξιολογείται σε FALSE. | =IF(A1="", 0, 1) |
Επιστρέφει 0 εάν το A1 είναι οπτικά κενό. Διαφορετικά επιστρέφει 1.
Εάν το A1 περιέχει κενή συμβολοσειρά (""), ο τύπος επιστρέφει 0.
Αποτιμάται σε TRUE αν ένα κελί περιέχει απολύτως τίποτα - χωρίς τύπους, χωρίς κενά, χωρίς κενές συμβολοσειρές.
Διαφορετικά, αξιολογείται σε FALSE.
Επιστρέφει 0 αν το A1 είναι απολύτως κενό, 1 διαφορετικά.
Εάν το A1 περιέχει κενή συμβολοσειρά (""), ο τύπος επιστρέφει 1.
Κύτταρα με συμβολοσειρές μηδενικού μήκους θεωρούνται κενό .
Επιστρέφει 1 εάν το A1 είναι μη κενό- 0 διαφορετικά.
Εάν το A1 περιέχει κενή συμβολοσειρά, ο τύπος επιστρέφει 0.
Κύτταρα με συμβολοσειρές μηδενικού μήκους θεωρούνται μη κενό .
Λειτουργεί όπως ο παραπάνω τύπος, αλλά επιστρέφει 1 αν το A1 περιέχει κενή συμβολοσειρά.
Και τώρα, ας δούμε τις κενές και μη κενές δηλώσεις IF σε δράση. Ας υποθέσουμε ότι έχετε μια ημερομηνία στη στήλη B μόνο αν έχει ήδη παιχτεί ένα παιχνίδι. Για να επισημάνετε τα ολοκληρωμένα παιχνίδια, χρησιμοποιήστε έναν από τους παρακάτω τύπους:
=IF(B2="", "", "Ολοκληρώθηκε")
=IF(ISBLANK(B2), "", "Ολοκληρώθηκε")
=IF($B2"", "Ολοκληρώθηκε", "")
=IF(ISBLANK($B2)=FALSE, "Ολοκληρώθηκε", "")
Σε περίπτωση που τα εξεταζόμενα κελιά δεν έχουν συμβολοσειρές μηδενικού μήκους, όλοι οι τύποι θα επιστρέψουν ακριβώς τα ίδια αποτελέσματα:
Ελέγξτε αν δύο κελιά είναι τα ίδια
Για να δημιουργήσετε έναν τύπο που ελέγχει αν δύο κελιά ταιριάζουν, συγκρίνετε τα κελιά χρησιμοποιώντας το σύμβολο της ισότητας (=) στο λογικό τεστ του IF. Για παράδειγμα:
=IF(B2=C2, "Ίδια βαθμολογία", "")
Για να ελέγξετε αν τα δύο κελιά περιέχουν το ίδιο κείμενο, συμπεριλαμβανομένης της πεζότητας των γραμμάτων, κάντε τον τύπο IF ευαίσθητο στην πεζότητα με τη βοήθεια της συνάρτησης EXACT.
Για παράδειγμα, για να συγκρίνετε τους κωδικούς πρόσβασης στους κωδικούς A2 και B2, και να επιστρέψετε "Match" αν οι δύο συμβολοσειρές είναι ακριβώς ίδιες, "Do not match" διαφορετικά, ο τύπος είναι:
=IF(EXACT(A2, B2), "Ταιριάζει", "Δεν ταιριάζει")
IF τότε φόρμουλα για την εκτέλεση ενός άλλου τύπου
Σε όλα τα προηγούμενα παραδείγματα, μια εντολή IF του Excel επέστρεφε τιμές. Μπορεί όμως να εκτελέσει και έναν συγκεκριμένο υπολογισμό ή να εκτελέσει έναν άλλο τύπο όταν ικανοποιείται ή δεν ικανοποιείται μια συγκεκριμένη συνθήκη. Για το σκοπό αυτό, ενσωματώστε μια άλλη συνάρτηση ή αριθμητική έκφραση στην εντολή value_if_true ή/και value_if_false επιχειρήματα.
Για παράδειγμα, αν το Β2 είναι μεγαλύτερο από 80, θα το πολλαπλασιάσουμε με 7%, διαφορετικά με 3%:
=IF(B2>80, B2*7%, B2*3%)
Πολλαπλές δηλώσεις IF στο Excel
Στην ουσία, υπάρχουν δύο τρόποι για να γράψετε πολλαπλές εντολές IF στο Excel:
- Ενσωμάτωση πολλών συναρτήσεων IF η μία μέσα στην άλλη
- Χρήση της συνάρτησης AND ή OR στη λογική δοκιμή
Ενσωματωμένη δήλωση IF
Οι ένθετες συναρτήσεις IF σας επιτρέπουν να τοποθετήσετε πολλαπλές δηλώσεις IF στο ίδιο κελί, δηλαδή να ελέγξετε πολλαπλές συνθήκες μέσα σε έναν τύπο και να επιστρέψετε διαφορετικές τιμές ανάλογα με τα αποτελέσματα αυτών των ελέγχων.
Ας υποθέσουμε ότι ο στόχος σας είναι να αποδώσετε διαφορετικά μπόνους ανάλογα με τη βαθμολογία:
- Πάνω από 90 - 10%
- 90 έως 81 - 7%
- 80 έως 70 - 5%
- Λιγότερο από 70 - 3%
Για να πετύχετε την εργασία αυτή, γράφετε 3 ξεχωριστές συναρτήσεις IF και τις εντάσσετε η μία στην άλλη ως εξής:
=IF(B2>90, 10%, IF(B2>=81, 7%, IF(B2>=70, 5%, 3%)))
Για περισσότερα παραδείγματα τύπων, ανατρέξτε στην ενότητα:
- Ενσωματωμένος τύπος IF του Excel
- Φωλιασμένη συνάρτηση IF: παραδείγματα, βέλτιστες πρακτικές και εναλλακτικές λύσεις
Δήλωση Excel IF με πολλαπλές συνθήκες
Για να αξιολογήσετε διάφορες συνθήκες με τη λογική AND ή OR, ενσωματώστε την αντίστοιχη συνάρτηση στη λογική δοκιμή:
- AND - θα επιστρέψει TRUE αν όλα πληρούνται οι προϋποθέσεις.
- OR - θα επιστρέψει TRUE αν οποιοδήποτε μία από τις προϋποθέσεις πληρούται.
Για παράδειγμα, για να επιστρέψετε την ένδειξη "Pass" εάν και οι δύο βαθμολογίες στα πεδία B2 και C2 είναι υψηλότερες από 80, ο τύπος είναι ο εξής:
=IF(AND(B2>80, C2>80), "Pass", "Fail")
Για να λάβετε το "Pass" αν οποιοδήποτε σκορ είναι μεγαλύτερο από 80, ο τύπος είναι:
=IF(OR(B2>80, C2>80), "Pass", "Fail")
Για περισσότερες λεπτομέρειες, επισκεφθείτε την ιστοσελίδα:
- Τύπος IF AND στο Excel
- Excel IF OR συνάρτηση με παραδείγματα τύπου
Εάν σφάλμα στο Excel
Ξεκινώντας από το Excel 2007, έχουμε μια ειδική συνάρτηση, με την ονομασία IFERROR, για τον έλεγχο των τύπων για σφάλματα. Στο Excel 2013 και νεότερα, υπάρχει επίσης η συνάρτηση IFNA για τον χειρισμό σφαλμάτων #N/A.
Και ακόμα, μπορεί να υπάρχουν ορισμένες περιπτώσεις όπου η χρήση της συνάρτησης IF μαζί με την ISERROR ή την ISNA είναι μια καλύτερη λύση. Βασικά, η IF ISERROR είναι ο τύπος που πρέπει να χρησιμοποιείτε όταν θέλετε να επιστρέψετε κάτι αν υπάρχει σφάλμα και κάτι άλλο αν δεν υπάρχει σφάλμα. Η συνάρτηση IFERROR δεν μπορεί να το κάνει αυτό, καθώς επιστρέφει πάντα το αποτέλεσμα του κύριου τύπου αν δεν υπάρχει σφάλμα.
Για παράδειγμα, για να συγκρίνετε κάθε βαθμολογία στη στήλη B με τις 3 κορυφαίες βαθμολογίες στα E2:E4 και να επιστρέψετε "Ναι" αν βρεθεί αντιστοιχία, "Όχι" σε αντίθετη περίπτωση, εισάγετε αυτόν τον τύπο στο C2 και στη συνέχεια τον αντιγράφετε μέχρι το C7:
=IF(ISERROR(MATCH(B2, $E$2:$E$4, 0)), "Όχι", "Ναι" )
Για περισσότερες πληροφορίες, ανατρέξτε στον τύπο IF ISERROR στο Excel.
Ελπίζω ότι τα παραδείγματά μας σας βοήθησαν να κατανοήσετε τα βασικά στοιχεία του Excel IF. Σας ευχαριστώ για την ανάγνωση και ελπίζω να σας δω στο blog μας την επόμενη εβδομάδα!
Βιβλίο ασκήσεων
Excel IF δήλωση - παραδείγματα τύπου (.xlsx αρχείο)