Πίνακας περιεχομένων
Λαμβάνετε πολλά σφάλματα #N/A στα φύλλα εργασίας σας και είστε περίεργοι να μάθετε αν υπάρχει τρόπος να εμφανίσετε ένα προσαρμοσμένο κείμενο; Ο τύπος IFNA είναι η λύση που χρειάζεστε.
Όταν ένας τύπος του Excel δεν μπορεί να εντοπίσει ή να βρει κάτι, πετάει το σφάλμα #N/A. Για να πιάσετε ένα τέτοιο σφάλμα και να το αντικαταστήσετε με ένα φιλικό προς το χρήστη μήνυμα, μπορείτε να χρησιμοποιήσετε τη συνάρτηση IFNA. Με άλλα λόγια, το #N/A είναι ο τρόπος του Excel να πει ότι η τιμή που αναζητάτε δεν υπάρχει στο σύνολο δεδομένων που αναφέρεται. Το IFNA είναι ο δικός σας τρόπος να παγιδεύσετε και να χειριστείτε αυτό το σφάλμα.
Συνάρτηση IFNA στο Excel
Η συνάρτηση IFNA του Excel προορίζεται για τη σύλληψη και το χειρισμό σφαλμάτων #N/A. Εάν ένας τύπος αξιολογείται ως #N/A, η IFNA παγιδεύει αυτό το σφάλμα και το αντικαθιστά με μια προσαρμοσμένη τιμή που καθορίζετε- διαφορετικά επιστρέφει ένα κανονικό αποτέλεσμα του τύπου.
Σύνταξη IFNA
Η σύνταξη της συνάρτησης IFNA έχει ως εξής:
IFNA(value, value_if_na)Πού:
Αξία (υποχρεωτικό) - ο τύπος, η τιμή ή η αναφορά που θα ελεγχθεί για σφάλμα #N/A.
Value_if_na (υποχρεωτικό) - η τιμή που επιστρέφεται εάν εντοπιστεί σφάλμα #N/A.
Σημειώσεις χρήσης
- Η λειτουργία IFNA χειρίζεται μόνο το #N/A χωρίς να καταστέλλει άλλα σφάλματα.
- Εάν η αξία επιχείρημα είναι ένα τύπος συστοιχίας , το IFNA επιστρέφει έναν πίνακα αποτελεσμάτων, ένα ανά κελί, όπως φαίνεται σε αυτό το παράδειγμα.
Διαθεσιμότητα IFNA
Η λειτουργία IFNA εισήχθη στο Excel 2013 και είναι διαθέσιμη σε όλες τις επόμενες εκδόσεις, συμπεριλαμβανομένων των Excel 2016, Excel 2019, Excel 2021 και Microsoft 365.
Σε προηγούμενες εκδόσεις, μπορείτε να εντοπίσετε σφάλματα #N/A χρησιμοποιώντας τις συναρτήσεις IF και ISNA μαζί.
Πώς να χρησιμοποιήσετε τη συνάρτηση IFNA στο Excel
Για να χρησιμοποιήσετε αποτελεσματικά το IFNA στο Excel, ακολουθήστε αυτή τη γενική προσέγγιση:
- Στο πρώτο όρισμα ( αξία ), βάλτε έναν τύπο που επηρεάζεται από το σφάλμα #N/A.
- Στο δεύτερο όρισμα ( value_if_na ), πληκτρολογήστε το κείμενο που θέλετε να επιστρέψετε αντί της τυπικής συμβολής σφάλματος. Για να επιστρέψετε ένα κενό κελί όταν δεν βρέθηκε τίποτα, δώστε μια κενή συμβολοσειρά (""").
Για να επιστρέψετε προσαρμοσμένο κείμενο , ο γενικός τύπος είναι:
IFNA( τύπος (), " προσαρμοσμένο κείμενο ")Για να επιστρέψετε ένα κενό κελί , ο γενικός τύπος είναι:
IFNA( τύπος (), "")Ας δούμε πώς λειτουργεί σε ένα απλό παράδειγμα. Στον παρακάτω πίνακα, ας υποθέσουμε ότι θέλετε να μάθετε πώς κατατάσσεται η βαθμολογία ενός συγκεκριμένου μαθητή μεταξύ των άλλων. Δεδομένου ότι τα δεδομένα είναι ταξινομημένα με βάση το Βαθμολογία στήλη από την υψηλότερη προς τη χαμηλότερη, η κατάταξη θα αντιστοιχεί στη σχετική θέση του μαθητή στον πίνακα. Και για να λάβετε τη θέση, μπορείτε να χρησιμοποιήσετε τη συνάρτηση MATCH στην απλούστερη μορφή της:
=MATCH(E1, A2:A10, 0)
Επειδή η τιμή αναζήτησης (Neal) δεν είναι διαθέσιμη στον πίνακα αναζήτησης (A2:A10), προκύπτει σφάλμα #N/A.
Πέφτοντας σε αυτό το σφάλμα, οι άπειροι χρήστες μπορεί να νομίζουν ότι κάτι δεν πάει καλά με τον τύπο και εσείς ως δημιουργός του βιβλίου εργασίας θα λάβετε πολλές ερωτήσεις. Για να το αποφύγετε αυτό, μπορείτε να δηλώσετε ρητά ότι ο τύπος είναι σωστός, απλά δεν μπορεί να βρει την τιμή που του ζητείται να αναζητήσει. Έτσι, φωλιάζετε τον τύπο MATCH στο πρώτο όρισμα του IFNA και, στο δεύτερο όρισμα, πληκτρολογείτε την προσαρμοσμένη σαςκείμενο, "Δεν βρέθηκε" στην περίπτωσή μας:
=IFNA(MATCH(E1, A2:A10, 0), "Δεν βρέθηκε")
Τώρα, αντί για την τυπική σημείωση σφάλματος, εμφανίζεται το δικό σας κείμενο σε ένα κελί, ενημερώνοντας τους χρήστες ότι η τιμή αναζήτησης δεν υπάρχει στο σύνολο δεδομένων:
Πώς να χρησιμοποιήσετε το IFNA με το VLOOKUP
Τις περισσότερες φορές το σφάλμα #N/A εμφανίζεται σε συναρτήσεις που αναζητούν κάτι, όπως οι VLOOKUP, HLOOKUP, LOOKUP και MATCH. Τα παρακάτω παραδείγματα καλύπτουν μερικές τυπικές περιπτώσεις χρήσης.
Παράδειγμα 1. Βασικός τύπος IFNA VLOOKUP
Για να παγιδεύσετε τα σφάλματα #N/A που εμφανίζονται όταν το VLOOKUP δεν μπορεί να βρει μια αντιστοιχία, ελέγξτε το αποτέλεσμά του χρησιμοποιώντας την IFNA και καθορίστε την τιμή που θα εμφανίζεται αντί για το σφάλμα. Η συνήθης πρακτική είναι να τυλίγετε τη συνάρτηση IFNA γύρω από τον υπάρχοντα τύπο VLOOKUP χρησιμοποιώντας αυτή τη σύνταξη:
IFNA(VLOOKUP(), " το κείμενό σας ")Στον πίνακα του δείγματός μας, ας υποθέσουμε ότι θέλετε να ανακτήσετε τη βαθμολογία ενός συγκεκριμένου μαθητή (E1). Για το σκοπό αυτό, χρησιμοποιείτε αυτόν τον κλασικό τύπο VLOOKUP:
=VLOOKUP(E1, A2:B10, 2, FALSE)
Το πρόβλημα είναι ότι ο Neal δεν έδωσε εξετάσεις, επομένως το όνομά του δεν υπάρχει στον κατάλογο και προφανώς το VLOOKUP δεν μπορεί να βρει αντιστοιχία.
Για να κρύψουμε το σφάλμα, τυλίγουμε το VLOOKUP σε IFNA ως εξής:
=IFNA(VLOOKUP(E1, A2:B10, 2, FALSE), "Δεν συμμετείχε στις εξετάσεις")
Τώρα, το αποτέλεσμα δεν φαίνεται τόσο εκφοβιστικό για τον χρήστη και είναι πολύ πιο κατατοπιστικό:
Παράδειγμα 2. IFNA VLOOKUP για αναζήτηση σε πολλαπλά φύλλα
Η λειτουργία IFNA είναι επίσης χρήσιμη για την εκτέλεση της λεγόμενης διαδοχική ή chained Η ιδέα είναι ότι με αυτόν τον τρόπο τοποθετείτε μερικούς διαφορετικούς τύπους IFNA(VLOOKUP(...)) ο ένας μέσα στον άλλο:
IFNA(VLOOKUP(...), IFNA(VLOOKUP(...), IFNA(VLOOKUP(...), "Δεν βρέθηκε"))))Εάν ένα πρωτεύον VLOOKUP δεν βρει τίποτα, η συνάρτηση IFNA εκτελεί το επόμενο VLOOKUP μέχρι να βρεθεί η επιθυμητή τιμή. Εάν όλες οι αναζητήσεις αποτύχουν, ο τύπος θα επιστρέψει το καθορισμένο κείμενο.
Ας υποθέσουμε ότι έχετε τις βαθμολογίες διαφορετικών τάξεων καταχωρημένες σε διαφορετικά φύλλα (με το όνομα Κατηγορία Α , Κατηγορία Β , και Κατηγορία C ). Στόχος σας είναι να λάβετε τη βαθμολογία ενός συγκεκριμένου μαθητή, το όνομα του οποίου έχει εισαχθεί στο κελί B1 του τρέχοντος φύλλου εργασίας σας. Για να εκπληρώσετε την αποστολή, χρησιμοποιήστε τον ακόλουθο τύπο:
=IFNA(VLOOKUP(B1, "Class A"!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, "Class B"!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, "Class C"!A2:B5, 2, FALSE), "Not found"))))
Ο τύπος αναζητά διαδοχικά το καθορισμένο όνομα σε τρία διαφορετικά φύλλα με τη σειρά που είναι ένθετα τα VLOOKUP και φέρνει την πρώτη αντιστοιχία που βρέθηκε:
Παράδειγμα 3. IFNA με INDEX MATCH
Με παρόμοιο τρόπο, το IFNA μπορεί να εντοπίσει σφάλματα #N/A που δημιουργούνται από άλλες συναρτήσεις αναζήτησης. Ως παράδειγμα, ας το χρησιμοποιήσουμε μαζί με τον τύπο INDEX MATCH:
=IFNA(INDEX(B2:B10, MATCH(E1, A2:A10, 0)), "Δεν βρέθηκε")
Η ουσία του τύπου είναι η ίδια όπως σε όλα τα προηγούμενα παραδείγματα - η INDEX MATCH εκτελεί μια αναζήτηση και η IFNA αξιολογεί το αποτέλεσμα και εντοπίζει ένα σφάλμα #N/A αν η τιμή στην οποία γίνεται αναφορά δεν βρεθεί.
IFNA για να επιστρέψει πολλαπλά αποτελέσματα
Σε περίπτωση που η εσωτερική συνάρτηση (δηλαδή ο τύπος που τοποθετείται στην περιοχή αξία argument) επιστρέφει πολλαπλές τιμές, το IFNA θα ελέγξει κάθε επιστρεφόμενη τιμή ξεχωριστά και θα εξάγει έναν πίνακα αποτελεσμάτων. Για παράδειγμα:
=IFNA(VLOOKUP(D2:D4, A2:B10, 2, FALSE), "Δεν βρέθηκε")
Στο Dynamic Array Excel (Microsoft 365 και Excel 2021), ένας κανονικός τύπος στο κορυφαίο κελί (E2) διαχέει αυτόματα όλα τα αποτελέσματα στα γειτονικά κελιά (όσον αφορά το Excel, ονομάζεται περιοχή διαρροής).
Στις προ-δυναμικές εκδόσεις (Excel 2019 και χαμηλότερες), ένα παρόμοιο αποτέλεσμα μπορεί να επιτευχθεί με τη χρήση ενός τύπου συστοιχίας πολλαπλών κελιών, ο οποίος ολοκληρώνεται με τη συντόμευση Ctrl + Shift + Enter.
Ποια είναι η διαφορά μεταξύ IFNA και IFERROR;
Ανάλογα με τη βασική αιτία του προβλήματος, ένας τύπος του Excel μπορεί να προκαλέσει διάφορα σφάλματα, όπως #N/A, #NAME, #VALUE, #REF, #DIV/0, #NUM και άλλα. Η συνάρτηση IFERROR πιάνει όλα αυτά τα σφάλματα, ενώ η IFNA περιορίζεται μόνο στο #N/A. Ποιο από τα δύο είναι καλύτερο να επιλέξετε; Αυτό εξαρτάται από την κατάσταση.
Εάν θέλετε να καταστείλετε κάθε είδους σφάλμα , τότε χρησιμοποιήστε τη συνάρτηση IFERROR. Είναι ιδιαίτερα χρήσιμη σε πολύπλοκους υπολογισμούς όταν ένας τύπος περιλαμβάνει πολλές συναρτήσεις που μπορούν να δημιουργήσουν διαφορετικά σφάλματα.
Με λειτουργίες αναζήτησης , καλύτερα να χρησιμοποιήσετε το IFNA, καθώς εμφανίζει ένα προσαρμοσμένο αποτέλεσμα μόνο όταν δεν βρίσκεται μια τιμή αναζήτησης και δεν κρύβει τα υποκείμενα προβλήματα με τον ίδιο τον τύπο.
Για να δείξουμε τη διαφορά, ας επαναφέρουμε τον βασικό τύπο IFNA VLOOKUP και ας γράψουμε "κατά λάθος" το όνομα της συνάρτησης (VLOKUP αντί για VLOOKUP).
=IFNA(VLOKUP(E1, A2:B10, 2, FALSE), "Δεν συμμετείχε στις εξετάσεις")
Το IFNA δεν αποκρύπτει αυτό το σφάλμα, οπότε μπορείτε να δείτε ξεκάθαρα ότι κάτι δεν πάει καλά με ένα από τα ονόματα των συναρτήσεων:
Τώρα, ας δούμε τι θα συμβεί αν χρησιμοποιήσετε το IFERROR:
=IFERROR(VLOKUP(E1, A2:B10, 2, FALSE), "Δεν συμμετείχε στις εξετάσεις")
Χμμ... λέει ότι η Olivia δεν έδωσε εξετάσεις, κάτι που δεν είναι αλήθεια! Αυτό συμβαίνει επειδή η συνάρτηση IFERROR παγιδεύει το σφάλμα #NAME? και επιστρέφει το προσαρμοσμένο κείμενο αντί αυτού. Σε αυτή την περίπτωση, όχι μόνο επιστρέφει λανθασμένες πληροφορίες, αλλά επίσης αποκρύπτει το πρόβλημα με τον τύπο.
Αυτός είναι ο τρόπος χρήσης του τύπου IFNA στο Excel. Σας ευχαριστώ για την ανάγνωση και ανυπομονώ να σας δω στο blog μας την επόμενη εβδομάδα!
Διαθέσιμες λήψεις
Παραδείγματα τύπων του Excel IFNA (.xlsx αρχείο)