Če želite ločiti besedilo in številke, lahko uporabite formulo, ki temelji na FIND funkcija , Funkcija MIN , in Funkcija LEN z LEVO ali PRAV funkcijo, odvisno od tega, ali želite izvleči besedilo ali številko. V prikazanem primeru je formula v C5:
= MIN ( FIND ({0,1,2,3,4,5,6,7,8,9},A1&'0123456789'))
ki vrne 7, položaj številke 3 v nizu 'jabolka30'.
PojasniloPregled
Formula je videti zapletena, vendar je mehanika v resnici precej preprosta.
Kot pri večini formul, ki delijo ali izvlečejo besedilo, je ključ poiskati položaj stvari, ki jo iščete. Ko imate položaj, lahko z drugimi funkcijami izvlečete tisto, kar potrebujete.
V tem primeru predpostavljamo, da so številke in besedilo združeni in da se številka pojavi za besedilom. Iz izvirnega besedila, ki je prikazano v eni celici, želite besedilo in številke razdeliti v ločene celice, na primer:
Izvirno | Besedilo | Številka |
Jabolka 30 | Jabolka | 30 |
breskve24 | breskve | 24 |
pomaranče 12 | pomaranče | 12 |
breskve0 | breskve | 0 |
Kot je navedeno zgoraj, je ključ v tem primeru poiskati začetni položaj številke, kar lahko storite s formulo, kot je ta:
excel zaokroži na dve decimalni mesti
= MIN ( FIND ({0,1,2,3,4,5,6,7,8,9},B5&'0123456789'))
Ko imate položaj, za izvlečenje samo besedila uporabite:
= MIN ( FIND ({0,1,2,3,4,5,6,7,8,9},A1&'0123456789'))
Če želite izvleči samo številko, uporabite:
= LEFT (A1,position-1)
V prvi zgornji formuli uporabljamo funkcijo FIND za iskanje začetnega položaja številke. Za find_text uporabljamo konstanto matrike {0,1,2,3,4,5,6,7,8,9}, zaradi česar funkcija FIND izvede ločeno iskanje za vsako vrednost v konstanti matrike. Ker konstanta niza vsebuje 10 številk, bo rezultat matrika z 10 vrednostmi. Na primer, če je izvirno besedilo 'apple30', bo nastala matrika:
= RIGHT (A1, LEN (A1)-position+1)
Vsaka številka v tem nizu predstavlja položaj elementa v konstanti matrike znotraj izvirnega besedila.
Nato funkcija MIN vrne najmanjšo vrednost na seznamu, ki ustreza položaju v prva številka ki se pojavi v izvirnem besedilu. V bistvu funkcija FIND dobi vsa številska mesta, MIN pa nam da prvo številčno mesto: opazite, da je 7 najmanjša vrednost v matriki, ki ustreza položaju številke 3 v izvirnem besedilu.
Morda se sprašujete o nenavadni gradnji za znotraj_teksta v funkciji iskanja:
kako vstaviti grafikon v
{8,10,11,7,13,14,15,16,17,18}
Ta del formule združuje vse možne številke 0-9 z izvirnim besedilom v B5. Na žalost FIND ne vrne nič, če vrednosti ne najdemo, zato je to le pameten način, da se izognete napakam, ki bi se lahko pojavile, če številke ne najdete.
V tem primeru, ker predvidevamo, da se bo številka vedno prikazala drugič v izvirnem besedilu dobro deluje, ker MIN sili le najmanjšega, oz prvi pojav števila, ki ga je treba vrniti. Dokler je številka naredi v izvirnem besedilu, bo to mesto vrnjeno.
Če izvirno besedilo ne vsebuje številk, se vrne 'lažni' položaj, enak dolžini izvirnega besedila + 1. S tem lažnim položajem zgornja formula LEFT še vedno vrne besedilo, formula DESNO pa an prazen niz ('').
Avtor Dave Bruns