Excel Εύρεση τελευταίας εμφάνισης χαρακτήρα σε συμβολοσειρά (6 μέθοδοι)

  • Μοιραστείτε Αυτό
Hugh West

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

Σε αυτό το άρθρο, θα βρείτε το τελευταία εμφάνιση ενός χαρακτήρας σε ένα string στο Excel Το σύνολο δεδομένων του δείγματός μας έχει τρεις στήλες : Όνομα εταιρείας , Κωδικός υπαλλήλου , και Τελευταία εμφάνιση . Κωδικός υπαλλήλου περιέχει το όνομα, την ηλικία και το τμήμα ενός υπαλλήλου.

Για την πρώτη 4 μεθόδους, θα βρούμε τη θέση της κάθετης προς τα εμπρός " / " για όλες τις τιμές στο Κωδικός υπαλλήλου Μετά από αυτό, θα βγάλουμε χορδές μετά την τελευταία κάθετο στην τελευταία 2 μέθοδοι.

Κατεβάστε το βιβλίο ασκήσεων

Εύρεση της τελευταίας εμφάνισης του χαρακτήρα στο String.xlsm

6 τρόποι στο Excel για την εύρεση της τελευταίας εμφάνισης χαρακτήρα σε συμβολοσειρά

1. Χρήση των λειτουργιών FIND & SUBSTITUTE στο Excel για την εύρεση της θέσης της τελευταίας εμφάνισης του χαρακτήρα στη συμβολοσειρά

Για την πρώτη μέθοδο, θα χρησιμοποιήσουμε το ΒΡΕΊΤΕ λειτουργία, η ΥΠΟΚΑΤΑΣΤΑΣΗ λειτουργία, η CHAR συνάρτηση, και η LEN συνάρτηση για να βρείτε το last θέση της κάθετης γραμμής στο string .

Βήματα:

  • Πρώτον, πληκτρολογήστε τον ακόλουθο τύπο στο κελί D5 .
=FIND(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/",""))/LEN("/")))))

Κατανομή τύπου

Η κύρια λειτουργία μας είναι ΒΡΕΊΤΕ . Θα βρούμε το CHAR(134) τιμή στη συμβολοσειρά μας.

  • CHAR(134)
    • Έξοδος: † .
    • Πρέπει να ορίσουμε έναν χαρακτήρα που δεν υπάρχει στις συμβολοσειρές μας. Τον επιλέξαμε επειδή είναι σπάνιος στις συμβολοσειρές. Αν κατά κάποιο τρόπο τον έχετε στις συμβολοσειρές σας, αλλάξτε τον σε κάτι που δεν υπάρχει στις συμβολοσειρές σας (για παράδειγμα " @ ", " ~ ", κ.λπ.).
  • SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/"))) -> γίνεται,
  • SUBSTITUTE(C5,"/","†",(17-LEN("Mike32Marketing"))/1) -> γίνεται,
  • SUBSTITUTE("Mike/32/Marketing","/","†",(17-15)/1)
    • Έξοδος: "Mike/32†Marketing" .
  • Τώρα ο πλήρης τύπος μας γίνεται,
  • =FIND("†", "Mike/32†Marketing")
    • Έξοδος: 8 .
  • Δεύτερον, πατήστε ENTER .

Θα δούμε την αξία 8 Αν μετρήσουμε με το χέρι από την αριστερή πλευρά, θα έχουμε 8 ως θέση για το slash στο κύτταρο C5 .

  • Τέλος, χρησιμοποιήστε το Χειρολαβή πλήρωσης για να αντιγράψετε τον τύπο προς τα κάτω.

Έτσι, έχουμε τη θέση του τελευταία εμφάνιση ενός χαρακτήρας στο string .

Διαβάστε περισσότερα: Λειτουργία του Excel: FIND vs SEARCH (Συγκριτική ανάλυση)

2. Εφαρμογή των λειτουργιών MATCH & amp; SEQUENCE στο Excel για την εύρεση της θέσης της τελευταίας εμφάνισης του χαρακτήρα στη συμβολοσειρά

Για τη δεύτερη μέθοδο, θα χρησιμοποιήσουμε το ΜΑΤΣ λειτουργία, η SEQUENCE λειτουργία, η MID συνάρτηση, και η LEN συνάρτηση για να βρείτε τη θέση του τελευταία εμφάνιση ενός χαρακτήρας στο string . Θυμηθείτε το SEQUENCE η λειτουργία είναι διαθέσιμη μόνο σε Excel 365 ή Excel 2021 .

Βήματα:

  • Πρώτον, πληκτρολογήστε τον ακόλουθο τύπο στο κελί D5 .
=MATCH(2,1/(MID(C5,SEQUENCE(LEN(C5)),1)="/"))

Κατανομή τύπου

  • SEQUENCE(LEN(C5))
    • Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
    • Το LEN η συνάρτηση μετράει το μήκος του κύτταρο C5 . SEQUENCE επιστρέφει μια λίστα αριθμών διαδοχικά σε έναν πίνακα.
  • MATCH(2,1/(MID(C5,{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1)=”/”))
    • Έξοδος: 8 .
    • Το Αγώνας συνάρτηση είναι η εύρεση του τελευταίου 1 τιμή στον τύπο μας. Βρίσκεται στο θέση.

  • Δεύτερον, πατήστε ENTER .

Χρησιμοποιώντας τον τύπο, βρήκαμε τη θέση του forward-slash ως 8 στο string .

  • Τέλος, χρησιμοποιήστε Χειρολαβή πλήρωσης στο AutoFill τον τύπο.

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

Διαβάστε περισσότερα: Πώς να βρείτε χαρακτήρα σε συμβολοσειρά Excel (8 εύκολοι τρόποι)

3. Χρήση ενός τύπου συστοιχίας στο Excel για την εύρεση της θέσης της τελευταίας εμφάνισης χαρακτήρα σε συμβολοσειρά

Θα χρησιμοποιήσουμε το ΣΕΙΡΑ λειτουργία, η INDEX λειτουργία, η ΜΑΤΣ , το MID , και το LEN συναρτήσεις για να δημιουργήσετε έναν τύπο πίνακα για να βρείτε τη θέση του τελευταία εμφάνιση ενός χαρακτήρας σε ένα string .

Βήματα:

  • Πρώτον, πληκτρολογήστε τον παρακάτω τύπο στο κελί D5 .
=MATCH(2,1/(MID(C5,ROW($C$1:INDEX(C:C,LEN(C5))),1)="/"))

Κατανομή τύπου

Ο τύπος είναι παρόμοιος με τη μέθοδο 2 Χρησιμοποιούμε το ΣΕΙΡΑ και το INDEX συνάρτηση για να αναπαράγετε την έξοδο ως SEQUENCE λειτουργία.

  • ROW($C$1:INDEX(C:C,LEN(C5)))
    • Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
    • Βλέπουμε ότι η έξοδος είναι η ίδια. INDEX επιστρέφει την τιμή ενός εύρους. LEN η συνάρτηση μετράει το μήκος της συμβολοσειράς από το κύτταρο C5 . Τέλος, το ΣΕΙΡΑ η συνάρτηση επιστρέφει το κύτταρο τιμές από 1 στο κύτταρο μήκος του C5 Ο υπόλοιπος τύπος είναι ο ίδιος με τη μέθοδο 2 .

  • Δεύτερον, πατήστε ENTER .

Έχουμε 8 Η φόρμουλά μας λειτούργησε άψογα.

Σημείωση: Χρησιμοποιούμε το Excel 365 Εάν χρησιμοποιείτε μια παλαιότερη έκδοση, τότε θα πρέπει να πατήσετε το πλήκτρο CTRL + SHIFT + ENTER .

  • Τέλος, κάντε διπλό κλικ ή σύρετε προς τα κάτω το Χειρολαβή πλήρωσης .

Έτσι πρέπει να μοιάζει το τελικό βήμα.

Διαβάστε περισσότερα: Εύρεση της πρώτης εμφάνισης μιας τιμής σε μια περιοχή στο Excel (3 τρόποι)

Παρόμοιες αναγνώσεις

  • Πώς να βρείτε τον χαρακτήρα * όχι ως μπαλαντέρ στο Excel (2 μέθοδοι)
  • Πώς να χρησιμοποιήσετε τη φόρμουλα του Excel για να βρείτε τον τελευταίο αριθμό σειράς με δεδομένα (2 τρόποι)
  • Εύρεση της τελευταίας τιμής στη στήλη μεγαλύτερη από το μηδέν στο Excel (2 εύκολοι τύποι)
  • Πώς να βρείτε συνδέσμους στο Excel
  • Εύρεση εξωτερικών συνδέσμων στο Excel (6 γρήγορες μέθοδοι)

4. Συνάρτηση που ορίζεται από τον χρήστη για την εύρεση της θέσης της τελευταίας εμφάνισης του χαρακτήρα στη συμβολοσειρά

Σε αυτή τη μέθοδο, θα χρησιμοποιήσουμε ένα προσαρμοσμένο VBA τύπο για να βρείτε την τελευταία θέση ενός χαρακτήρας σε ένα string Χωρίς περαιτέρω καθυστέρηση, ας ξεκινήσουμε τη δράση.

Βήματα:

  • Πρώτον, πατήστε ALT + F11 για να εμφανιστεί το VBA παράθυρο.

Μπορείτε να επιλέξετε Visual Basic από το Προγραμματιστής για να το κάνετε επίσης.

  • Δεύτερον, από Εισαγωγή >>>> επιλέξτε Ενότητα .

  • Τρίτον, αντίγραφο και επικόλληση τον ακόλουθο κώδικα.
 Function LOccurence(x1 As String, x2 As String) LOccurence = InStrRev(x1, x2) End Function 

Δημιουργήσαμε μια προσαρμοσμένη συνάρτηση που ονομάζεται " Επιβάρυνση ". InStrRev είναι μια VBA συνάρτηση που επιστρέφει τη θέση τέλους ενός χαρακτήρας . Θα εισάγουμε το κύτταρο τιμή ως x1 και ο συγκεκριμένος χαρακτήρας (στην περίπτωσή μας, πρόκειται για ένα forward-slash ) ως x2 σε αυτή την προσαρμοσμένη λειτουργία.

  • Μετά από αυτό, κλείστε το VBA παράθυρο και πηγαίνετε στο " Θέση VBA " φύλλο .
  • Πληκτρολογήστε τον ακόλουθο τύπο στο κελί D5 .
=LOccurence(C5,"/")

Σε αυτή την προσαρμοσμένη συνάρτηση, της λέμε να βρει τη θέση του τελευταία εμφάνιση του forward-slash στο string από το κύτταρο C5 .

  • Στη συνέχεια, πατήστε ENTER .

Έχουμε 8 όπως αναμενόταν καθώς η εμφανίστηκε τελευταία φορά θέση του forward-slash .

  • Τέλος, μπορούμε να σύρουμε τον τύπο προς τα κάτω χρησιμοποιώντας το Χειρολαβή πλήρωσης .

Έτσι, εφαρμόσαμε έναν ακόμη τύπο για την εύρεση της θέσης του τελευταία εμφάνιση ενός χαρακτήρας .

Διαβάστε περισσότερα: Πώς να βρείτε χαρακτήρα σε συμβολοσειρά από τα δεξιά στο Excel (4 εύκολες μέθοδοι)

5. Χρήση συνδυασμένων συναρτήσεων στο Excel για την εύρεση της τελευταίας εμφάνισης χαρακτήρα σε συμβολοσειρά

Μέχρι τώρα, είδαμε πώς να βρίσκουμε την τελευταία θέση ενός χαρακτήρα. Τώρα θα χρησιμοποιήσουμε την εντολή ΑΝΑΖΗΤΗΣΗ λειτουργία, η ΔΕΞΙΑ λειτουργία, η ΥΠΟΚΑΤΑΣΤΑΣΗ , το LEN , το CHAR συναρτήσεις για να εμφανίσουμε τη συμβολοσειρά μετά την τελευταία εμφάνιση ενός χαρακτήρα. Με απλούστερους όρους, θα εξάγουμε το τμήμα των υπαλλήλων από το Στήλη Κωδικός υπαλλήλου .

Βήματα:

  • Πρώτον, πληκτρολογήστε τον ακόλουθο τύπο στο κελί D5 .
=RIGHT(C5,LEN(C5)-SEARCH(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))))

Κατανομή τύπου

  • SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/",""))) -> γίνεται,
  • SUBSTITUTE(C5,"/",CHAR(134),2)
    • Έξοδος: "Mike/32†Marketing" .
    • Το ΥΠΟΚΑΤΑΣΤΑΣΗ αντικαθιστά μια τιμή με μια άλλη τιμή. Στην περίπτωσή μας, αντικαθιστά κάθε forward-slash με ένα στο πρώτο τμήμα και με κενό στο δεύτερο τμήμα. Στη συνέχεια, το LEN Η συνάρτηση μετράει το μήκος του. Έτσι έχουμε την τιμή μας.
  • ΑΝΑΖΗΤΗΣΗ("†", "Mike/32†Marketing")
    • Έξοδος: 8 .
    • Το ΑΝΑΖΗΤΗΣΗ συνάρτηση βρίσκει τον ειδικό χαρακτήρα στην προηγούμενη έξοδό μας. Συνεπώς, τον βρήκε στο
  • Τέλος, ο τύπος μας ανάγεται σε, RIGHT(C5,9)
    • Έξοδος: "Marketing" .
    • Το ΔΕΞΙΑ συνάρτηση επιστρέφει την τιμή του κελιού μέχρι ένα συγκεκριμένο αριθμό χαρακτήρων από τη δεξιά πλευρά. Έχουμε βρει τη θέση του τελευταίου forward-slash στο Το μήκος του κύτταρο C5 είναι 17 , και 17 - 8 = 9 . Ως εκ τούτου, έχουμε το 9 χαρακτήρες από τη δεξιά πλευρά ως έξοδο.

  • Δεύτερον, πατήστε ENTER .

Πήραμε το χορδές μετά την τελευταία forward-slash .

  • Τέλος, χρησιμοποιήστε το Χειρολαβή πλήρωσης στο AutoFill τους τύπους σε κύτταρο εύρος D6:D10 .

Έτσι, έχουμε εξάγει το χορδές μετά την τελευταία εμφάνιση ενός χαρακτήρας .

Διαβάστε περισσότερα: Πώς να βρείτε αν το κελί περιέχει συγκεκριμένο κείμενο στο Excel

6. Προσαρμοσμένη φόρμουλα VBA στο Excel για την εύρεση της τελευταίας εμφάνισης χαρακτήρα σε συμβολοσειρά

Για την τελευταία μέθοδο, Θα χρησιμοποιήσουμε ένα προσαρμοσμένο VBA τύπο για την εξαγωγή του string μετά την κάθετος προς τα εμπρός .

Βήματα:

  • Πρώτον, πατήστε ALT + F11 για να εμφανιστεί το VBA παράθυρο.

Μπορείτε να επιλέξετε Visual Basic από το Προγραμματιστής για να το κάνετε επίσης.

  • Δεύτερον, από Εισαγωγή >>>> επιλέξτε Ενότητα όπως κάναμε στη μέθοδο 4 .
  • Τρίτον, αντίγραφο και επικόλληση τον ακόλουθο κώδικα.
 Function LastString(cRange As Range, cString As String) Dim cLength As Integer cLength = Len(cRange) For x = cLength To 1 Step -1 If Mid(cRange, x - 1, 1) = cString Then LastString = x Exit Function End If Next x End Function 

Δημιουργούμε μια προσαρμοσμένη συνάρτηση που ονομάζεται " LastString ". Αυτή η συνάρτηση θα επιστρέψει τη θέση έναρξης του χορδές μετά την τελευταία εμφάνιση ενός χαρακτήρα.

  • Στη συνέχεια, πληκτρολογήστε τον παρακάτω τύπο στο κελί D5 .
=RIGHT(C5,LEN(C5)-LastString(C5,"/")+1)

Κατανομή τύπου

  • LastString(C5,"/")
    • Έξοδος: 9 .
    • Εδώ παίρνουμε την αρχική θέση του string αμέσως μετά την τελευταία κάθετος προς τα εμπρός .
  • LEN(C5)
    • Έξοδος: 17 .
  • LEN(C5)-LastString(C5,"/")+1
    • Έξοδος: 9.
    • Πρέπει να προσθέσουμε 1 αλλιώς θα πάρουμε τιμή με το " M ".
  • Ο τύπος μας θα μειωθεί σε RIGHT(C5,9)
    • Έξοδος: " Μάρκετινγκ ".

  • Τύπος ENTER .

Θα πάρουμε την τιμή " Μάρκετινγκ ".

  • Τέλος, AutoFill ο τύπος μέχρι το κελί C10 .

Πετύχαμε τον στόχο μας. Η φόρμουλα λειτουργεί όπως προβλέπεται.

Διαβάστε περισσότερα: Πώς να βρείτε την τελευταία γραμμή με μια συγκεκριμένη τιμή στο Excel (6 μέθοδοι)

Τμήμα πρακτικής

Έχουμε επισυνάψει σύνολα δεδομένων πρακτικής εκτός από κάθε μέθοδο στο Excel Μπορείτε να εξασκηθείτε στο να γίνετε καλύτεροι σε αυτή την εργασία.

Συμπέρασμα

Σας δείξαμε 6 μέθοδοι στο Excel για να βρείτε το τελευταία εμφάνιση ενός χαρακτήρας σε ένα string Αν έχετε οποιοδήποτε πρόβλημα σχετικά με αυτά, μη διστάσετε να σχολιάσετε παρακάτω. Ευχαριστούμε για την ανάγνωση και συνεχίστε να διαπρέπετε!

Ο Hugh West είναι ένας εξαιρετικά έμπειρος εκπαιδευτής και αναλυτής του Excel με πάνω από 10 χρόνια εμπειρίας στον κλάδο. Είναι κάτοχος πτυχίου Λογιστικής και Χρηματοοικονομικής και μεταπτυχιακού στη Διοίκηση Επιχειρήσεων. Ο Hugh έχει πάθος για τη διδασκαλία και έχει αναπτύξει μια μοναδική προσέγγιση διδασκαλίας που είναι εύκολο να ακολουθηθεί και να κατανοηθεί. Οι εξειδικευμένες γνώσεις του στο Excel έχουν βοηθήσει χιλιάδες φοιτητές και επαγγελματίες παγκοσμίως να βελτιώσουν τις δεξιότητές τους και να διαπρέψουν στην καριέρα τους. Μέσω του ιστολογίου του, ο Hugh μοιράζεται τις γνώσεις του με τον κόσμο, προσφέροντας δωρεάν μαθήματα Excel και διαδικτυακή εκπαίδευση για να βοηθήσει άτομα και επιχειρήσεις να αξιοποιήσουν πλήρως τις δυνατότητές τους.