Екцел формула: Поделите текст и бројеве -

Преглед садржаја

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

=MIN(FIND((0,1,2,3,4,5,6,7,8,9),A1&"0123456789"))

Резиме

Да бисте одвојили текст и бројеве, можете користити формулу засновану на функцији ФИНД, МИН и ЛЕН са функцијом ЛИЈЕВО или ДЕСНО, у зависности од тога да ли желите издвојити текст или број. У приказаном примеру, формула у Ц5 је:

=MIN(FIND((0,1,2,3,4,5,6,7,8,9),B5&"0123456789"))

који враћа 7, положај броја 3 у низу „аппле30“.

Објашњење

Преглед

Формула изгледа сложено, али механика је у ствари прилично једноставна.

Као и код већине формула које раздвајају или издвајају текст, кључ је лоцирање положаја ствари коју тражите. Једном када заузмете положај, можете да користите друге функције да бисте издвојили оно што вам треба.

У овом случају претпостављамо да су бројеви и текст комбиновани и да се број појављује након текста. Из оригиналног текста, који се појављује у једној ћелији, желите да поделите текст и бројеве у засебне ћелије, попут ове:

Оригинал Текст Број
Јабуке30 Јабуке 30
брескве24 брескве 24
поморанџе12 поморанџе 12
брескве0 брескве 0

Као што је горе речено, кључ у овом случају је лоцирање почетне позиције броја, што можете учинити помоћу следеће формуле:

=MIN(FIND((0,1,2,3,4,5,6,7,8,9),A1&"0123456789"))

Када заузмете положај, за издвајање само текста користите:

=LEFT(A1,position-1)

И да бисте издвојили само број, користите:

=RIGHT(A1,LEN(A1)-position+1)

У првој горњој формули користимо функцију ФИНД за проналажење почетне позиције броја. За финд_тект користимо константу низа (0,1,2,3,4,5,6,7,8,9), то доводи до тога да функција ФИНД врши засебно претраживање за сваку вредност у константи низа. Пошто константа низа садржи 10 бројева, резултат ће бити низ са 10 вредности. На пример, ако је оригинални текст „аппле30“, резултујући низ биће:

(8,10,11,7,13,14,15,16,17,18)

Сваки број у овом низу представља положај ставке у константи низа унутар оригиналног текста.

Даље функција МИН враћа најмању вредност са листе, која одговара положају у првом броју који се појављује у оригиналном тексту. У суштини, функција ФИНД добија све бројевне позиције, а МИН нам даје прву бројевну позицију: имајте на уму да је 7 најмања вредност у низу, што одговара положају броја 3 у оригиналном тексту.

Можда се питате о чудној конструкцији за унутар_текста у функцији проналажења:

B5&"0123456789"

Овај део формуле спаја све могуће бројеве 0-9 са оригиналним текстом у Б5. Нажалост, ФИНД не враћа нулу када вредност није пронађена, па је ово само паметан начин да се избегну грешке које би се могле појавити када број није пронађен.

У овом примеру, с обзиром да претпостављамо да ће се број увек појавити на другом месту у оригиналном тексту, то добро функционише, јер МИН присиљава да се врати само најмањи или први случај броја. Све док се број појави у оригиналном тексту, та позиција ће бити враћена.

Ако оригинални текст не садржи бројеве, вратиће се „лажни“ положај једнак дужини оригиналног текста + 1. Са овом лажном позицијом, горња ЛЕВА формула и даље ће враћати текст, а ДЕСНА формула празан низ ("").

Добри линкови

Формула Рицка Ротхстеина на Мр Екцел-у

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