Екцел формула: Поделити текст са разграничником -

Генеричка формула

=TRIM(MID(SUBSTITUTE(A1,delim,REPT(" ",LEN(A1))),(N-1)*LEN(A1)+1,LEN(A1)))

Резиме

Да бисте текст поделили на произвољан граничник (зарез, размак, цев итд.), Можете користити формулу засновану на функцијама ТРИМ, МИД, СУБСТИТУТЕ, РЕПТ и ЛЕН. У приказаном примеру, формула у Ц5 је:

=TRIM(MID(SUBSTITUTE($B5,"|",REPT(" ",LEN($B5))),(C$4-1)*LEN($B5)+1,LEN($B5)))

Напомена: референце на Б5 и Ц4 су мешовите референце које омогућавају копирање формуле попреко и надоле.

Објашњење

Суштина ове формуле је да замени дати граничник великим бројем размака помоћу СУБСТИТУТЕ и РЕПТ, а затим помоћу функције МИД извуче текст који се односи на „н-ти наступ“ и ТРИМ функцију како би се ослободио сувишног простора.

У овом исечку граничник (граничник) замењује се бројем размака једнаким укупној дужини низа:

SUBSTITUTE(A1,delim,REPT(" ",LEN(A1)))

Тада формула користи функцију МИД за издвајање н-ог под низа. Почетна тачка израчунава се помоћу доњег кода, где Н представља „н-ту“:

(N-1)*LEN(A1)+1

Укупан број извучених знакова једнак је дужини низа пуног текста. Функција ТРИМ затим уклања све сувишне размаке и враћа само н-ти низ.

Издвојите само једну инстанцу

Иако је пример подешен за издвајање 5 подниза из текста у колони Б, лако можете издвојити само 1 инстанцу. На пример, да бисте издвојили само 4. ставку (град), можете да користите:

=TRIM(MID(SUBSTITUTE(B5,"|",REPT(" ",LEN(B5))),(4-1)*LEN(B5)+1,LEN(B5)))

Функција „Текст у колоне“

За ручне, једнократне конверзије, Екцел има уграђену функцију под називом „Текст у колоне“ која може да дели текст у ћелије са граничником по вашем избору. Ову функцију ћете пронаћи на картици Подаци на траци у одељку Алати за податке.

Занимљиви Чланци...