Τύπος Excel: Λάβετε επώνυμο από το όνομα -

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

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

=RIGHT(name,LEN(name)-FIND("*",SUBSTITUTE(name," ","*",LEN(name)-LEN(SUBSTITUTE(name," ","")))))

Περίληψη

Εάν θέλετε να εξαγάγετε το επώνυμο από ένα πλήρες όνομα, μπορείτε να το κάνετε με αυτόν τον μάλλον περίπλοκο τύπο που χρησιμοποιεί πολλές συναρτήσεις. Στη γενική μορφή του τύπου (παραπάνω), το όνομα είναι ένα πλήρες όνομα, με ένα κενό διάστημα που χωρίζει το όνομα από άλλα μέρη του ονόματος.

Στο παράδειγμα, το ενεργό κελί περιέχει αυτόν τον τύπο:

=RIGHT(B4,LEN(B4)-FIND("*",SUBSTITUTE(B4," ","*",LEN(B4)-LEN(SUBSTITUTE(B4," ","")))))

Εξήγηση

Στον πυρήνα, αυτός ο τύπος χρησιμοποιεί τη συνάρτηση RIGHT για εξαγωγή χαρακτήρων ξεκινώντας από τα δεξιά. Οι άλλες λειτουργίες που αποτελούν το περίπλοκο μέρος αυτού του τύπου κάνουν μόνο ένα πράγμα: υπολογίζουν πόσους χαρακτήρες πρέπει να εξαχθούν.

Σε υψηλό επίπεδο, ο τύπος αντικαθιστά το τελευταίο κενό στο όνομα με έναν αστερίσκο "*" και στη συνέχεια χρησιμοποιεί το FIND για να προσδιορίσει τη θέση του αστερίσκου στο όνομα. Η θέση χρησιμοποιείται για να υπολογίσει πόσους χαρακτήρες να εξαγάγετε με ΔΕΞΙΑ

Πώς αντικαθιστά η συνάρτηση μόνο τον τελευταίο χώρο; Αυτό είναι το έξυπνο μέρος.

Ανεβάστε, η εξήγηση γίνεται λίγο τεχνική.

Το κλειδί σε αυτόν τον τύπο είναι το εξής:

SUBSTITUTE(B4," ","*",LEN(B4)-LEN(SUBSTITUTE(B4," ","")))

Που κάνει την πραγματική αντικατάσταση του τελευταίου χώρου με "*".

Το SUBSTITUTE έχει ένα τέταρτο (προαιρετικό) όρισμα που καθορίζει ποια "παρουσία" του κειμένου εύρεσης πρέπει να αντικατασταθεί. Εάν δεν παρέχεται τίποτα για αυτό το επιχείρημα, όλες οι παρουσίες αντικαθίστανται. Ωστόσο, εάν, ας υποθέσουμε ότι παρέχεται ο αριθμός 2, αντικαθίσταται μόνο η δεύτερη περίπτωση. Στο παραπάνω απόσπασμα, η παρουσία υπολογίζεται με τη χρήση του δεύτερου ΥΠΟΤΡΟΦΙΟΥ:

LEN(B4)-LEN(SUBSTITUTE(B4," ",""))

Εδώ, το μήκος του ονόματος χωρίς κενά αφαιρείται από το πραγματικό μήκος του ονόματος. Εάν υπάρχει μόνο ένα κενό στο όνομα, παράγει 1. Εάν υπάρχουν δύο κενά, το αποτέλεσμα είναι 2 και ούτω καθεξής.

Στο όνομα του παραδείγματος στο B4, υπάρχουν δύο κενά στο όνομα, οπότε λαμβάνουμε:

15 - 13 = 2

Και δύο χρησιμοποιούνται όπως στον αριθμό παρουσίας:

SUBSTITUTE(B4," ","*",2)

που αντικαθιστά το δεύτερο κενό με "*". Το όνομα μοιάζει έτσι:

"Σούζαν Ανν Τσανγκ"

Στη συνέχεια, η συνάρτηση FIND αναλαμβάνει για να μάθει πού βρίσκεται το "*" στο όνομα:

FIND("*", "Susan Ann*Chang")

Το αποτέλεσμα είναι 10 (το * είναι στη 10η θέση) που αφαιρείται από το συνολικό μήκος του ονόματος:

LEN(B4)-10

Δεδομένου ότι το όνομα είναι 15 χαρακτήρες, έχουμε:

15-10 = 5

Ο αριθμός 5 χρησιμοποιείται από ΔΕΞΙΑ όπως:

=RIGHT(B4,5)

Που οδηγεί σε "Τσανγκ"

Όπως μπορείτε να δείτε, είναι πολλή δουλειά παραπάνω για να υπολογίσετε αυτό το απλό 5!

Χειρισμός ασυνεπών χώρων

Οι επιπλέον χώροι θα προκαλέσουν προβλήματα με αυτόν τον τύπο. Μία λύση είναι να χρησιμοποιήσετε τη λειτουργία TRIM πρώτα για να καθαρίσετε τα πράγματα και, στη συνέχεια, να χρησιμοποιήσετε τον τύπο ανάλυσης.

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