Excel formula: Odstrani zadnjo besedo -

Kazalo

Splošna formula

=MID(A1,1,FIND("~",SUBSTITUTE(A1," ","~",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))-1)

Povzetek

Če želite odstraniti zadnjo besedo iz besedilnega niza, lahko uporabite formulo, ki temelji na funkciji MID, s pomočjo SUBSTITUTE, LEN in FIND. V prikazanem primeru je formula v celici B5:

=MID(B5,1,FIND("~",SUBSTITUTE(B5," ","~",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))))-1)

Pojasnilo

Ta formula uporablja funkcijo MID za odstranitev zadnje besede iz besedilnega niza. Glavni izziv je ugotoviti, kje se začne zadnja beseda.

Formula je nekoliko zapletena, vendar so koraki preprosti. Najprej preštejemo, koliko presledkov obstaja v besedilu, z uporabo LEN in NAMESTE. Nato v funkciji SUBSTITUTE uporabimo nekoliko nejasen argument "instance", da zamenjamo zadnji presledek s tildo (~). Na koncu uporabimo FIND, da ugotovimo, kje je tilda, in funkcijo MID, da zavržemo vse po tildi.

Če delamo od znotraj navzven, s pomočjo funkcij LEN in SUBSTITUTE preštejemo, koliko presledkov se pojavi v naslednjem:

LEN(B5)-LEN(SUBSTITUTE(B5," ","")) // returns 6

Za besedilo v B5 to vrne 6. Ta stran podrobneje razlaga ta del formule. To nam pove, da želimo besedilo izrezati na 6. presledek.

Opomba: če so besede ločene z več presledki, boste najprej želeli normalizirati presledke s funkcijo TRIM.

Številka 6 se nato priklopi v drugo NAMESTO kot "številka primerka":

SUBSTITUTE(B5," ","~",6) // insert tilde

Tu zamenjamo 6. primerek presledka ("") s tildo (~). Po zagonu SUBSTITUTE vrne ta niz:

"It's been seven hours and fifteen~days"

Opomba: tildo (~) uporabljamo samo zato, ker gre za redko pojavljajoč se znak. Uporabite lahko kateri koli znak, ki vam je všeč, če ni v izvornem besedilu.

Nato s pomočjo funkcije FIND poiščemo tildo:

FIND("~","It's been seven hours and fifteen~days")-1

FIND vrne 34, saj je tilda 34. znak. Od tega števila odštejemo 1, ker v končni rezultat ne želimo vključiti zadnjega presledka. Zdaj lahko formulo poenostavimo na:

=MID(B5,1,33) // extract final text

Nato funkcija MID vrne znake 1-33:

"It's been seven hours and fifteen"

Z ločevalnikom po meri

Enako formulo lahko uporabimo z drugačnim ločevalnikom. Če želite na primer odstraniti celotno besedilo po zadnji poševnici naprej "/", lahko uporabite:

=MID(A1,1,FIND("~",SUBSTITUTE(A1,"/","~",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))))-1)

Odstrani zadnjih n besed

Formulo lahko prilagodite tako, da odstranite zadnji dve besedi, zadnji 3 besedi itd. Splošna oblika je:

=MID(A1,1,FIND("~",SUBSTITUTE(A1,d,"~",LEN(A1)-LEN(SUBSTITUTE(A1,d,""))-(n-1)))-1)

kjer je d ločilo, n pa število besed, ki jih je treba odstraniti.

Zanimive Članki...