Excel Vind laaste voorkoms van karakter in string (6 metodes)

  • Deel Dit
Hugh West

In hierdie artikel gaan ons vind die laaste voorkoms van 'n karakter in 'n string in Excel . Ons voorbeelddatastel het drie kolomme : Maatskappynaam , Werknemerkode en Laaste Voorval . Werknemerkode bevat die naam, ouderdom en die departement van 'n werknemer.

Vir die eerste 4 -metodes, sal ons die posisie van die vorentoe-skuinsstreep vind “ / ” in vir al die waardes in Werknemerkode . Daarna gaan ons stringe na die laaste skuinsstreep in die laaste 2 metodes uitvoer.

Laai oefenwerkboek af

Vind laaste voorkoms van karakter in String.xlsm

6 maniere in Excel om laaste voorkoms van karakter in te vind String

1. Gebruik FIND & VERVANG-funksies in Excel om posisie van laaste voorkoms van karakter in string te vind

Vir die eerste metode gaan ons die VIND -funksie, die VERVANG -funksie gebruik , die CHAR -funksie, en die LEN -funksie om die laaste posisie van die skuinsstreep in ons string te vind .

Stappe:

  • Tik eers die volgende formule in sel D5 .
=FIND(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/")))

Formule-uiteensetting

Ons hooffunksie is VIND . Ons gaan die CHAR(134) -waarde in ons string vind.

  • CHAR(134)
    • Uitset:† .
    • Ons moet 'n karakter stel wat nie in ons snare voorkom nie. Ons het dit gekies omdat dit skaars is in snare. As jy dit op een of ander manier in jou stringe het, verander dit na enigiets wat nie in jou stringe is nie (byvoorbeeld " @ ", " ~ ", ens.).
  • SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/ ”)) -> word,
  • SUBSTITUTE(C5,”/”,”†”,(17-LEN(“Mike32Marketing”))/1) -> word,
  • SUBSTITUTE(“Mike/32/Bemarking”,,”/”,”†”,(17-15)/1)
    • Uitset : “Mike/32†Bemarking” .
  • Nou word ons volledige formule,
  • =FIND(“†”,,”Mike/32 †Bemarking”)
    • Uitset: 8 .
  • Tweedens, druk ENTER .

Ons sal die waarde 8 sien. As ons handmatig van die linkerkant af tel, sal ons 8 kry as die posisie vir die skuinsstreep in sel C5 .

  • Ten slotte, gebruik die Vulhandvatsel om die formule af te kopieer.

Daarom het ons die posisie van die laaste voorkoms van 'n karakter in ons string .

Lees meer: Excel-funksie: FIND vs SEARCH ('n Vergelykende analise)

2. Pas MATCH & VOLGORDE-funksies in Excel om posisie van laaste voorkoms van karakter in string te vind

Vir die tweede metode gaan ons die MATCH -funksie gebruik, die VOLGORDE -funksie , die MIDDEL funksie, en die LEN -funksie om die posisie van die laaste voorkoms van 'n karakter in die string te vind. Onthou die SEQUENCE -funksie is slegs beskikbaar op Excel 365 of Excel 2021 .

Stappe:

  • Tik eerstens die volgende formule in sel D5 .
=MATCH(2,1/(MID(C5,SEQUENCE(LEN(C5)),1)="/"))

Formule-ontleding

  • VOLGORDE(LEN(C5))
    • Uitset: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
    • Die LEN -funksie meet die lengte van sel C5 . Die VOLGORDE -funksie gee 'n lys van getalle opeenvolgend in 'n skikking terug.
  • MATCH(2,1/(MID(C5,{1;2; 3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1)="/"))
    • Uitset: 8 .
    • Die Pas -funksie vind die laaste 1 -waarde in ons formule. Dit is in die 8ste posisie.

  • Tweedens, druk ENTER .

Deur die formule te gebruik, het ons die posisie van voorwaarts-skuinsstreep as 8 in ons string gevind.

  • Ten slotte, gebruik Vulhandvatsel om Outovul die formule te gebruik.

Ten slot, ons het nog 'n formule toegepas om die laaste posisie van 'n karakter in die stringe te vind.

Lees meer: Hoe om karakter in String Excel te vind (8 maklike maniere)

3. Gebruik 'n Skikkingsformule in Excel om posisie vanLaaste voorkoms van karakter in string

Ons gaan die RY -funksie, die INDEKS -funksie, die MATCH , die MID , en die LEN funksies om 'n skikkingsformule te skep om die posisie van die laaste voorkoms van 'n karakter in 'n string te vind .

Stappe:

  • Tik eers die formule van onder af na sel D5 .
=MATCH(2,1/(MID(C5,ROW($C$1:INDEX(C:C,LEN(C5))),1)="/"))

Formule-ontleding

Die formule is soortgelyk aan metode 2 . Ons gebruik die RY en die INDEKS -funksie om die uitvoer as die SEQUENCE -funksie te repliseer.

  • RY ($C$1:INDEX(C:C,LEN(C5)))
    • Uitset: {1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17} .
    • Ons kan sien die uitset is dieselfde. Die INDEKS -funksie gee die waarde van 'n reeks terug. Die LEN -funksie tel die lengte van die string vanaf sel C5 . Laastens gee die RY -funksie die sel -waardes van 1 tot sel -lengte van C5 . Die res van die formule is dieselfde as metode 2 .

  • Tweedens, druk ENTER .

Ons het 8 as die waarde soos verwag. Ons formule het foutloos gewerk.

Let wel: Ons gebruik die Excel 365 -weergawe. As jy 'n ouer weergawe gebruik, sal jy CTRL + SHIFT + ENTER moet druk.

  • Ten slotte, dubbel -klik of sleep die Vulhandvatsel af.

Dit is hoe die laaste stap moet lyk.

Lees meer: Vind eerste voorkoms van 'n waarde in 'n reeks in Excel (3 maniere)

Soortgelyke lesings

  • Hoe om * karakter te vind nie as jokerteken in Excel nie (2 metodes)
  • Hoe om Excel-formule te gebruik om laaste rynommer te vind met Data (2 maniere)
  • Vind laaste waarde in kolom groter as nul in Excel (2 maklike formules)
  • Hoe om skakels in Excel te vind
  • Vind eksterne skakels in Excel (6 vinnige metodes)

4. Gebruikergedefinieerde funksie om posisie van laaste voorkoms van karakter in string te vind

In hierdie metode sal ons 'n pasgemaakte VBA -formule gebruik om die laaste posisie van 'n karakter in 'n string te vind. Kom ons spring sonder meer in die aksie.

Stappe:

  • Druk eers ALT + F11 om die VBA -venster op te roep.

Jy kan Visual Basic van die Ontwikkelaar -oortjie kies om dit te doen ook.

  • Tweedens, Van Voeg in >>> kies Module .

  • Derdens, kopieer en plak die volgende kode .
6626

Ons het 'n pasgemaakte funksie genaamd " LOccurence " geskep. Die InStrRev is 'n VBA -funksie wat die eindposisie van 'n karakter terugstuur. Ons sal ons sel waarde invoer as x1 en die spesifieke karakter (in ons geval is dit 'n voorwaarts-skuinsstreep ) as x2 in hierdie pasgemaakte funksie.

  • Maak daarna die VBA -venster toe en gaan na die " Posisie VBA " blad .
  • Tik die volgende formule in sel D5 .
=LOccurence(C5,"/")

In hierdie pasgemaakte funksie vertel ons dit om die posisie van die laaste voorkoms van voorwaarts-skuinsstreep in die string van sel C5 te vind.

  • Druk dan ENTER .

Ons het 8 soos verwag as die laaste plaasgevind posisie van die voorwaarts-skuinsstreep .

  • Uiteindelik kan ons die formule af sleep met die Vulhandvatsel .

Ons het dus nog 'n formule toegepas om die posisie van die laaste voorkoms van 'n karakter te vind.

Lees meer: Hoe om  karakter in string van regs in Excel te vind (4 maklike metodes)

5. Gebruik Gekombineerde funksies in Excel om die laaste voorkoms van C te vind haracter in String

Tot hiertoe het ons gesien hoe om die laaste posisie van 'n karakter te vind. Nou gaan ons die SOEK -funksie, die REGTE -funksie, die SUBSTITUTE , die LEN , die CHAR gebruik funksies om die string te wys na die laaste voorkoms van 'n karakter. In eenvoudiger terme sal ons die departement van die werknemers uit die Werknemerkode uitvoerkolom .

Stappe:

  • Tik eers die volgende formule in sel D5 .
=RIGHT(C5,LEN(C5)-SEARCH(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))))

Formule-ontleding

  • PLAASVERVANGER(C5,”/”,CHAR(134),LEN(C5)-LEN(PLAASVERVANG(C5,”/”,””))) -> word,
  • SUBSTITUTE(C5,"/",CHAR(134),2)
    • Uitset: "Mike/32†Bemarking" .
    • Die SUBSTITUTE -funksie vervang 'n waarde met 'n ander waarde. In ons geval vervang dit elke voorwaarts-skuinsstreep met 'n in die eerste gedeelte en met leeg in die laaste gedeelte. Dan meet die LEN -funksie die lengte daarvan. Dit is hoe ons ons waarde gekry het.
  • SOEK(“†”,,”Mike/32†Bemarking”)
    • Uitvoer: 8 .
    • Die SOEK -funksie vind die spesiale karakter in ons vorige uitvoer. Gevolglik het dit dit gevind in 8ste
  • Uiteindelik verminder ons formule na, REGS(C5,9)
    • Uitvoer: “Bemarking” .
    • Die REGTE -funksie gee die selwaarde terug tot 'n sekere aantal karakters vanaf die regterkant. Ons het die posisie van die laaste voorwaartse skuinsstreep in 8ste gevind. Die lengte van sel C5 is 17 , en 17 8 = 9 . Daarom het ons die 9 karakters van die regterkant af as die uitvoer.

  • Tweedens, druk ENTER .

Ons het die stringe na dielaaste voorwaarts-skuinsstreep .

  • Ten slotte, gebruik die Vulhandvatsel om Outovul die formules in sel te gebruik reeks D6:D10 .

Daarom het ons die stringe na die laaste voorkoms onttrek van 'n karakter .

Lees meer: Hoe om te vind of sel spesifieke teks in Excel bevat

6. Pasgemaakte VBA-formule in Excel om laaste voorkoms van karakter in string te vind

Vir die laaste metode sal ons 'n pasgemaakte VBA -formule gebruik om onttrek die string na die vorentoe skuinsstreep .

Stappe:

  • Druk eers ALT + F11 om die VBA venster te laat verskyn.

Jy kan Visual Basic kies uit die Ontwikkelaar -oortjie om dit ook te doen.

  • Tweedens, Van Voeg in >>> kies Module soos ons in metode 4 gedoen het.
  • Derdens, kopieer en plak die volgende kode.
5762

Ons skep 'n pasgemaakte funksie genaamd " LastString ". Hierdie funksie sal die beginposisie van die stringe na die laaste voorkoms van 'n karakter terugstuur.

  • Tik daarna die formule van onder na sel D5 .
=RIGHT(C5,LEN(C5)-LastString(C5,"/")+1)

Formule-ontleding

  • LastString(C5,”/”)
    • Uitset: 9 .
    • Hier kry ons die beginposisie van die string onmiddellik na die laaste vorentoe-skuinsstreep .
  • LEN(C5)
    • Uitset: 17 .
  • LEN(C5)-LastString(C5,”/”)+1
    • Uitset: 9.
    • Ons moet 1 byvoeg anders kry ons waarde met die " M ".
  • Ons formule sal verminder tot REGS(C5,9)
    • Uitvoer: Bemarking “.

  • Druk ENTER .

Ons kry die waarde “ Bemarking ”.

  • Laastens, Vul outomaties in die formule tot by sel C10 .

Ons het ons doelwit. Die formule werk soos bedoel.

Lees meer: Hoe om laaste ry met 'n spesifieke waarde in Excel te vind (6 metodes)

Oefenafdeling

Ons het oefendatastelle behalwe elke metode in die Excel -lêer aangeheg. Jy kan oefen om beter in hierdie taak te word.

Gevolgtrekking

Ons het vir jou 6 metodes gewys in Excel om die laaste voorkoms van 'n karakter in 'n string te vind. As jy enige probleme rakende hierdie het, voel vry om kommentaar hieronder te lewer. Dankie dat jy gelees het, en bly presteer!

Hugh West is 'n hoogs ervare Excel-afrigter en ontleder met meer as 10 jaar ondervinding in die bedryf. Hy het 'n Baccalaureusgraad in Rekeningkunde en Finansies en 'n Meestersgraad in Besigheidsadministrasie. Hugh het 'n passie vir onderrig en het 'n unieke onderrigbenadering ontwikkel wat maklik is om te volg en te verstaan. Sy kundige kennis van Excel het duisende studente en professionele persone wêreldwyd gehelp om hul vaardighede te verbeter en uit te blink in hul loopbane. Deur sy blog deel Hugh sy kennis met die wêreld, en bied gratis Excel-tutoriale en aanlyn opleiding aan om individue en besighede te help om hul volle potensiaal te bereik.