
Általános képlet
=TRIM(LEFT(SUBSTITUTE(MID(txt,FIND("@",txt),LEN(txt))," ",REPT(" ",100)),100))
Összegzés
Egy adott karakterrel kezdődő szavak kibontásához hat függvényen alapuló képletet használhat: TRIM, BAL, SUBSTITUT, MID, LEN és REPT. Ez a megközelítés akkor hasznos, ha olyan dolgokat kell kinyernie, mint egy Twitter felhasználói név, egy más szöveget tartalmazó cellából.
A bemutatott példában a C5 képlete a következő:
=TRIM(LEFT(SUBSTITUTE(MID(B5,FIND("@",B5),LEN(B5))," ",REPT(" ",100)),100))
Magyarázat
Belülről kifelé kezdve a MID funkcióval egész szöveg kibontásra kerül a "@" után:
MID(B5,FIND("@",B5),LEN(B5))
A FIND funkció biztosítja a kiindulási pontot, és az összes karakter kibontásához csak a LEN-t használjuk az eredeti szövegen. Ez kissé hanyag, de elkerüli, hogy a kitermeléshez szükséges karakterek pontos számát kelljen kiszámítani. A MID nem érdekli, hogy ez a szám nagyobb-e, mint a többi karakter, egyszerűen kivonja az összes szöveget a "@" után.
Ezután a fennmaradó szöveget szóközökkel "elárasztjuk", helyettesítve egyetlen szóközt 100 szóközzel a SUBSTITUTE és a REPT kombinációjával:
SUBSTITUTE("@word and remaining text"," ",REPT(" ",100))
Ez őrültségnek tűnik, de a logika egyértelművé válik alább.
Ezután csak a kívánt szó (azaz @word) kibontásához használjuk a BAL billentyűt, hogy kibontsuk az első 100 karaktert balról. Ezzel "@word" -et kapunk, plusz sok extra szóköz. A megjelenítéshez az alábbi kötőjelek szóközöket képviselnek:
@szó---------------------
Most csak el kell távolítanunk minden extra helyet. Ehhez a TRIM függvényt használjuk.
Megjegyzés: 100 a leghosszabb szó, amelyet várhatóan talál, és amely a speciális karakterrel kezdődik. Növelje vagy csökkentse az Ön igényeinek megfelelően.
Van egy jobb módja ennek? Tudassa velem az alábbi megjegyzésekben!