Excel képlet: Az utolsó két szó kivonása a cellából

Tartalomjegyzék

Általános képlet

=MID(A1,FIND("@",SUBSTITUTE(A1," ","@",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))-1))+1,100)

Összegzés

Az utolsó két szó kivonásához egy cellából több Excel-funkcióval felépített képletet használhat, beleértve a MID, FIND, SUBSTITUTE és LEN elemeket. A bemutatott példában a C5 képlete a következő:

=MID(B5,FIND("@",SUBSTITUTE(B5," ","@",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-1))+1,100)

Magyarázat

Lényegében ez a képlet a MID függvényt használja a második és az utolsó szóköz közötti karakterek kibontására. A MID függvény 3 argumentumot vesz igénybe: a szöveget, amellyel dolgozni kell, a kiindulási helyzetet és a kibontandó karakterek számát.

A szöveg a B oszlopból származik, és a karakterek száma bármilyen nagy szám lehet, amely biztosítja az utolsó két szó kibontását. A kihívás az, hogy meghatározzuk a kiindulási helyzetet, amely éppen a második az utolsó helyet követi. Az okos munkát elsősorban a SUBSTITUTE függvénnyel végzik, amelynek opcionális argumentuma van, amelyet példányszámnak hívnak. Ezzel a szolgáltatással a szöveg második és utolsó helyét a "@" karakterrel helyettesítik, amely aztán a FIND funkcióval található.

Belülről kifelé haladva az alábbi kivonat kitalálja, hogy hány szóköz van a teljes szövegben, amelyből 1 kivonásra kerül.

LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-1

A bemutatott példában 5 szóköz van a szövegben, így a fenti kód 4-et ad vissza. Ez a szám a külső SUBSTITUTE függvénybe kerül példányszámként:

SUBSTITUTE(B5," ","@",4)

Ez azt eredményezi, hogy a SUBSTITUTE a negyedik szóköz karaktert "@" -ra cseréli. A @ választása tetszőleges. Bármely olyan karaktert használhat, amely nem jelenik meg az eredeti szövegben.

Ezután a FIND megtalálja a "@" karaktert a szövegben:

FIND("@","A stitch in time@saves nine")

A FIND eredménye 17, amelyhez 1-et adunk, hogy 18-at kapjunk. Ez a kiindulási helyzet, és második argumentumként a MID függvénybe kerül. Az egyszerűség kedvéért a kinyerendő karakterek számát kemény kódként 100-nak adják. Ez a szám tetszőleges, és a helyzethez igazítható.

Bontsa ki az utolsó N szót a cellából

Ez a képlet általánosítható az utolsó N szó kivonására egy cellából úgy, hogy a példában szereplő keménykódolt 1-et (N-1) helyettesíti. Ezenkívül, ha sok szót kibont, érdemes a MID (100) kemény kódolású argumentumát nagyobb számmal helyettesíteni. Annak garantálása érdekében, hogy a szám elég nagy legyen, egyszerűen használhatja a LEN funkciót az alábbiak szerint:

=MID(B5,FIND("@",SUBSTITUTE(B5," ","@",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-(N-1)))+1,LEN(B5))

érdekes cikkek...