Sadržaj
Iako Microsoft nije osigurao izravnu formulu ili sintaksu za izdvajanje samo brojeva iz ćelije programa Excel, možemo uključiti širok raspon formula programa Excel za napraviti jednu funkciju koja se može koristiti za izdvajanje brojeva ili znamenki samo iz Excel ćelija. U ovom članku pokušat ćemo detaljno pokazati i objasniti kako možemo izvući samo brojeve iz ćelija s odgovarajućim formulama prema nekoliko kriterija.
Preuzmi Practice Workbook
Preuzmi besplatnu praktičnu knjigu koju smo koristili za pripremu ovog članka. Možete unijeti tekstualne vrijednosti s brojevima u odabrane ćelije i odmah pronaći rezultate pomoću ugrađenih formula.
Izvlačenje brojeva iz Cell.xlsm
7 učinkovitih načina za izvlačenje samo brojeva iz ćelije programa Excel
Postojat će jedan VBA kod, jedna značajka programa Excel i pet praktičnih formula koje će vam pomoći da izvučete brojeve iz ćelije. Kao na slici ispod, imamo neke kodove uključujući znamenke i slova gdje su znamenke prisutne na početku. Moramo izdvojiti samo te znamenke ili brojeve.
1. Izvlačenje brojeva s početka teksta
U ovoj prvoj metodi kombinirat ćemo LIJEVO , SUM , LEN i SUBSTITUTE funkcija za izvlačenje brojeva s početka tekstualnog niza. Prvo ćemo upisati ovu formulu u ćeliju iprethodni odjeljak. Rezultirajuće vrijednosti će tada biti - {0,1,1,0,0,0,0,0,0,1}.
➤ SUM(LEN(B5)-LEN (ZAMJENA(B5, {“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″,”8″,”9”}, “”) ))
- Uz pomoć SUM funkcije, vrijednosti unutar niza pronađene u zadnjem odjeljku zbrojit će se do 3 ( 0+1+1+0+0+0+0+0+0+1).
- Dakle, prema prvom dijelu naše formule, A>0 (3>0) . Sada ćemo prijeći na sljedeći dio raščlambe.
Raščlamba dijela B = MID(0&B5, LARGE(INDEX(ISNUMBER(–MID(B5,ROW() INDIRECT(“$1:$”&LEN(B5))),1))* ROW(INDIRECT(“$1:$”&LEN(B5))),0), ROW(INDIRECT(“$1:$” &LEN(B5))))+1,1)
➤ INDIRECT(“$1:$”&LEN(B5))
- Funkcija INDIRECT ovdje će pohraniti vrijednosti niza kao referencu na niz. Unutar zagrada, naredba ampersand (&) pridružit će broj znakova koji se nalaze u ćeliji B5 sa sintaksom raspona ćelija. To znači da će svaki od 1 do definiranog broja znakova biti pohranjen kao referenca niza.
➤ RED(INDIREKT(“$1:$”&LEN(B5)) )
- Sada, ova funkcija ROW izvući će sve brojeve iz niza i rezultirajuće vrijednosti za ćeliju B5 će biti- {1;2;3;4;5;6;7;8;9}.
➤ MID(B5,ROW( INDIRECT(“$1:$”&LEN(B5))),1)
- U ovom dijelu formule,Funkcija MID izrazit će sve znakove iz ćelije B5 na temelju svih pozicija pronađenih kao brojevi u prethodnom odjeljku. Dakle, ekstrahirane vrijednosti će se naći nakon ovog dijela- {“1″;”9″;” “;”D”;”D”;”X”;”2″;”M”;”N”}.
➤ ISNUMBER(–MID(B5,ROW(INDIRECT) (“$1:$”&LEN(B5))),1))
- Kako je ISBROJ logična funkcija, Pojedinačno ćemo odrediti jesu li vrijednosti pronađene u prethodnom odjeljku nizovi brojeva ili ne. Ako da, onda će se vratiti kao TRUE , u suprotnom će se prikazati kao FALSE .
- Dakle, u našem slučaju, rezultat će biti- { TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}.
➤ INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1:$”) &LEN(B5))),1))*RED(INDIRECT(“$1:$”&LEN(B5))),0)
- Ako primijetite unutar iznad funkcije, korištena je dvostruka crtica, poznata kao Double Unary . Koristi se za pretvaranje svih logičkih vrijednosti u nizove brojeva - 1(TRUE) ili 0(FALSE) . Sada će funkcija INDEX vratiti ovaj rezultat kao- {1;1;0;0;0;0;1;0;0}.
- Nakon da će se rezultirajuće vrijednosti pomnožiti s vrijednostima dobivenim iz funkcije ROW unutar niza, a rezultat će biti - {1;2;0;0;0;0; 7;0;0}.
➤ LARGE(INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1:$”&LEN(B5))),1 ))*RED(INDIREKT(“$1:$”&LEN(B5))),0),ROW(INDIRECT(“$1:$”&LEN(B5))))
- Funkcija LARGE sada će preurediti najveće vrijednosti iz niza prema pozicijama na temelju brojeva pronađenih u funkcijama ROW . & naše rezultantne vrijednosti za ovaj odjeljak formule bit će - {7;2;1;0;0;0;0;0;0}.
➤ MID(0&B5 , LARGE(INDEX(ISBROJ(–MID(B5,ROW(INDIRECT(“$1:$”&LEN(B5))),1))*ROW(INDIRECT(“$1:$”&LEN(B5)) ),0), ROW(INDIRECT(“$1:$”&LEN(B5))))+1,1)
- Sada će ovaj dio funkcije spojiti 0 s tekstovima u ćeliji B5 . Zatim će dodati 1 pojedinačno sa svim brojevima pronađenim u zadnjem odjeljku i prikazati znakove iz B5 ćelije na temelju definiranih pozicija brojeva.
- Dakle, naš rezultat iz ovog odjeljka bit će- {“2″;”9″;”1″;”0″;”0″;”0″;”0″;”0″;”0” }.
Raščlamba dijela C = (10^RED(INDIRECT(“$1:$”&LEN(B5)))/10),””)
- Ovaj dio će odrediti potencije broja 10 & pohranite ih unutar niza. Znamenke potencija su brojevi pronađeni prethodnom funkcijom ROW .
- Ovaj dio formule vratit će vrijednosti kao- {1;10;100 ;1000;10000;100000;1000000;10000000;100000000}.
Množenje B n i C n
- Sada, rezultantne vrijednosti iz posljednja dva velika raščlanjivanja B i C sada ćebiti pomnožen unutar niza. Tada će umnošci dobiveni množenjem biti- {2;90;100;0;0;0;0;0;0}.
- I konačno, SUMPROIZVOD funkcija će zbrojiti ove vrijednosti pronađene u nizu. Dakle, naš će konačni ishod biti 192 (2+90+100+0+0+0+0+0+0) , što su izvučeni brojevi iz ćelije B5 .
Pročitajte više: Kako razdvojiti tekst i brojeve u Excelu (4 laka načina)
5. Izdvajanje peteroznamenkastih brojeva iz niza
Upotrijebit ćemo drugu formulu za izdvajanje peteroznamenkastih brojeva iz bilo kojeg dijela niza u Excelu. U ovom ćemo odjeljku po prvi put upotrijebiti funkcije CONCAT i SEQUENCE . Štoviše, malo smo promijenili naš skup podataka za ovu metodu.
Koraci:
- Prvo odaberite raspon ćelija C5:C12 .
- Drugo, upišite sljedeću formulu.
=CONCAT(IFERROR(0+MID(B5,SEQUENCE(LEN(B5)),1),""))
- Na kraju pritisnite Ctrl+Enter .
🔎 Raščlamba formule
- LEN(B5)
- Izlaz: 11 .
- Ova funkcija vraća duljinu niza.
- SEQUENCE(11)
- Izlaz: {1;2;3;4;5; 6;7;8;9;10;11} .
- Ova funkcija vraća prvih jedanaest brojeva.
- MID(B5,{1;2 ;3;4;5;6;7;8;9;10;11},1)
- Izlaz: {“1″;”9″;” “;”D”;”D”;”X”;”2″;”M”;”N”;”3″;”3″} .
- Koristeći ovaj dio, mi smodobivanje pojedinačnih znakova iz niza.
- 0+{“1″;”9″;” “;”D”;”D”;”X”;”2″;”M”;”N”;”3″;”3″}
- Izlaz: {1;9; #VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;3;3} .
- Kada nizu dodamo nulu, ona će vrati pogrešku.
- IFERROR({1;9;#VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;3 ;3},””)
- Izlaz: {1;9;””;””;””;””;2;””;””;3;3} .
- Postajemo prazni za sve vrijednosti pogreške.
- CONCAT({1;9;””;””;””;””;2;” ”;””;3;3})
- Izlaz: 19233 .
- Na kraju, dodajemo sve vrijednosti kako bismo izdvojili samo peteroznamenkasti broj.
6. Korištenje Flash Fill za izdvajanje brojeva unutar raspona
Korištenje Flash Značajka Fill je lakša i jednostavnija od bilo koje druge gore navedene metode. Izvući ćemo brojeve s bilo koje pozicije u tekstualnim nizovima. Da bismo ispravno izvršili ovu metodu, moramo pomoći Excelu da pronađe uzorak vrijednosti ćelija u stupcu ili retku izvodeći ekstrakciju samo za prve dvije vrijednosti.
Koraci:
- Za početak, ručno upišite brojeve u ćeliju C5 .
- Zatim počnite upisivati brojeve od ćelije B6 do ćelije C6 i Excel će automatski prepoznati uzorak.
- Na kraju pritisnite Enter .
Bilješke: Ova metoda ima nekenedostataka, zbog čega se ne preporučuje u svim slučajevima kada trebate izvući brojeve iz tekstualnih nizova. Flash Fill obično slijedi uzorak ćelija u stupcu ili rasponu. Dakle, prva 2 ili 3 izdvajanja ili izračuna moraju se obaviti ručno kako bi se Excelu pomoglo da apsorbira uobičajeni obrazac rezultirajućih vrijednosti. Ali ponekad ne slijedi točan uzorak koji nam je potreban i stoga će slijediti vlastiti obrazac i dati vam neusklađeni rezultat.
Na primjer, ako smo morali izdvojiti dvije nule (00) iz dani podaci, pokazivat će samo jednu nulu, ne dvije. Zatim, ako želite izvući brojeve s početka ili zadnjih pozicija u ćeliji, izvući će i tekstualne vrijednosti, zajedno s brojevima.
Pročitajte više: Kako za izdvajanje brojeva nakon određenog teksta u Excelu (2 prikladna načina)
7. Primjena VBA koda za izdvajanje samo brojeva iz Excel ćelije
Ako ste zainteresirani za korištenje Excel VBA Macro za izdvajanje brojeva samo iz ćelija, zatim slijedite korake u nastavku. Pokazat ćemo vam kako upisati kod u prozor VBA Module . Ovaj kod će tražiti od korisnika da navede ulazne i izlazne raspone ćelija.
Koraci:
- Prvo pritisnite ALT+F11 za otvaranje prozora VBA .
- Zatim, na kartici Insert odaberite naredba Modul . Novi modulpojavit će se prozor u koji ćete upisati kodove.
- Treće, unutar vašeg modula zalijepite sljedeće kodove nakon kopiranja.
6520
- Nakon toga pritisnite F5 za izvršenje koda. Pojavit će se dijaloški okvir pod nazivom “ Odabir ulaznih podataka ”.
- Zatim odaberite sve tekstualne ćelije (tj. B5:B12 ) i pritisnite OK .
- Nakon toga, drugi dijaloški okvir pod nazivom “ Odabir izlazne ćelije ” pojavit će se gdje morate odabrati određenu ćeliju ili raspon ćelija da biste vidjeli izlazne podatke ili vrijednosti.
- Na kraju odaberite raspon ćelija C5:C12 i pritisnite Enter .
- Slijedom toga, vidjet ćete izvučene brojeve iz sve tekstove odjednom. Tako ćemo završiti sedam brzih metoda za izdvajanje brojeva samo iz Excel ćelije.
🔎 Razdvajanje VBA koda
➤ Deklariranje parametara
5586
- Ovdje u ovom dijelu na početku deklariramo sve naše parametre kao cijele brojeve, vrijednosti niza ili raspone ćelija. Zatim dajemo imena našim dijaloškim okvirima s “Odabir ulaznih podataka” i “Odabir izlazne ćelije” .
➤ Definiranje vrsta ulaza & Izlazi za dijaloške okvire
5605
- Sada definiramo parametre i njihove vrste za dijaloške okvire. Ovdje dodavanje Type:=8 značiulazni i izlazni podaci sastojat će se od referentnih ćelija ili raspona ćelija.
- Također definiramo da će se potprogram zaustaviti ako se ulazni podaci ne pronađu. Spominjanjem ove makronaredbe, podrutina se neće pokvariti zbog podataka koji nedostaju, već će prestati funkcionirati.
➤ Kombiniranje funkcija unutar petlji koda za Iteracije
4204
- Na kraju, od svega, ovo je najvažniji dio gdje primjenjujemo funkcije ili formule koje trebamo dodijeliti tekstovima da bismo pronašli rezultantne vrijednosti iz nizova .
- Jedna od glavnih prednosti kodiranja funkcije za Excel je ta što nije potrebno upisivati veliku formulu kao što smo morali raditi u prethodnim metodama, budući da VBA ima ugrađene naredbe za korištenje For ili While petlji gdje se iteracija za svaki detalj u tekstualnom nizu može izvršiti bez ikakvih problema.
Pročitajte više: Kako odvojiti brojeve od teksta u programu Excel VBA (3 Metode)
Zaključak
Pokazali smo vam 7 jednostavnih metoda za izdvajanje samo brojeva iz Excel ćelije. Izdvajanje samo brojeva iz tekstualnog niza nije tako jednostavno kao što se čini jer zahtijeva kombinaciju više funkcija, što konačnu formulu ili sintaksu čini kompliciranom. Ali nadamo se da vam je način na koji smo pokušali ilustrirati formule rastavljanjem unutarnjih funkcija pomogao da razumijete sintaksu uz malo udobnosti ijednostavnost.
Ako pronađete bilo koju drugu funkciju ili formulu koju smo trebali dodati ovdje, javite nam putem svojih vrijednih komentara. Ili možete baciti pogled na naše informativnije i zanimljivije članke vezane uz Excel funkcije na ovoj web stranici.
tada ćemo pomoću Ručice za punjenje kopirati tu formulu u ostale ćelije.Koraci:
- Prvo upišite formulu u ćeliju C5 .
=LEFT(B5,SUM(LEN(B5)-LEN(SUBSTITUTE(B5,{"0","1","2","3","4","5","6","7","8","9"},""))))
- Drugo, pritisnite Enter i dobit ćete broj 34 za prvi kod.
- Treće, upotrijebite Full Handle za automatsko popunjavanje svih ostalih ćelija u stupcu C .
🔎 Raščlamba formule
➤ ZAMJENA(B5,{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″,”8″,”9″}, ””)
- Ovdje će funkcija SUBSTITUTE pronaći znamenke (0-9) uzastopno i, ako ih pronađe, zamijenit će tu znamenku u ćeliji B5 s praznim znakom svaki put. Dakle, funkcija će se vratiti kao- {“34DTXRF”,”34DTXRF”,”34DTXRF”,”4DTXRF”,”3DTXRF”,”34DTXRF”,”34DTXRF”,”34DTXRF”,”34DTXRF”,”34DTXRF”}.
➤ LEN(ZAMJENA(B5,{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7 ″,”8″,”9″},””))
- Funkcija LEN određuje broj znakova u nizu . Dakle, ovdje će funkcija LEN brojati sve znakove koji se pojedinačno nalaze u tekstovima kroz funkciju ZAMJENA . Rezultirajuće vrijednosti bit će ovdje u našem slučaju – {7,7,7,6,6,7,7,7,7,7}.
➤ LEN(B5)- LEN(ZAMJENA(B5,{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7”,”8″,”9″},”” )))
- Ovaj dio jeoduzimanje od broja znakova u ćeliji B5 svim ostalim brojevima znakova koji se pojedinačno nalaze u prethodnom odjeljku formule. Dakle, ovdje će rezultantne vrijednosti biti – {0,0,0,1,1,0,0,0,0,0}.
➤ SUM(LEN(B5) -LEN(ZAMJENA(B5,{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″,”8″,”9″},” ”)))
- Funkcija SUM jednostavno će zbrojiti sve pronađene oduzete vrijednosti & tako da će rezultat biti ovdje, 2 (0+0+0+1+1+0+0+0+0+0).
➤ = LIJEVO(B5,SUM(LEN(B5)-LEN(ZAMJENA(B5;{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″, ”8″,”9″},””))))
- A sada je posljednji dio gdje će funkcija LEFT vrati vrijednosti s točnim brojem znakova slijeva koji se nalaze u prethodnom odjeljku formule. Kako smo dobili vrijednost zbroja kao 2, funkcija LEFT ovdje će vratiti samo 34 iz teksta 34DTXRF .
➥ Povezano: Kako razdvojiti brojeve u Excelu pomoću formule (5 načina)
2. Izdvajanje brojeva iz Desna strana teksta
U ovom odjeljku izvući ćemo brojeve ili znamenke s desne strane tekstualnog niza. Ovdje ćemo koristiti funkcije RIGHT , MIN i SEARCH .
Koraci:
- Za početak, u našem skupu podataka što moramo upisati u ćeliju C5 je-
=RIGHT(B5,LEN(B5) - MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&"0123456789")) +1)
- Nakon toga pritisnite Unesite , a zatim upotrijebite Ručku za popunjavanje za automatsko popunjavanje ostalih ćelija.
🔎 Pregled formule
➤ B5&”0123456789″
- Ovdje povezujemo vrijednosti u B5 ćeliji s 0123456789 upotrebom &) između njih i dobit ćemo rezultantnu vrijednost kao - DTXRF340123456789.
➤ SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&”0123456789″)
- Sada će funkcija SEARCH tražiti sve znamenke (0-9) jednu po jednu u rezultantnu vrijednost dobivenu iz prethodnog odjeljka i vratit će položaje tih 10 znamenki u znakovima DTXRF340123456789 . Dakle, ovdje će naše rezultantne vrijednosti biti- {8,9,10,6,7,13,14,15,16,17}.
➤ MIN(SEARCH({0 ,1,2,3,4,5,6,7,8,9}, B5&”0123456789″))
- The MIN Funkcija koristi se za pronalaženje najniže znamenke ili broja u nizu. Dakle, ovdje će minimalna ili najniža vrijednost biti - 6 iz niza {8,9,10,6,7,13,14,15,16,17} koji se nalazi u prethodnom odjeljku formule .
➤ LEN(B5) – MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&”0123456789″ )) +1)
- Sada će se broj znakova u B5 pronaći pomoću LEN funkciju. Zatim će oduzeti vrijednost 6 (pronađenu u zadnjem odjeljku), a zatim vratiti rezultat dodavanjem 1. Ovdje u našem slučaju,rezultirajuća vrijednost će biti 2 (7-6+1) .
➤ RIGHT(B5,LEN(B5) – MIN(SEARCH({0,1, 2,3,4,5,6,7,8,9}, B5&”0123456789″)) +1)
- DESNO Funkcija vratit će određeni broj znakova s zadnje ili desne strane niza. Nakon rezultata dobivenog postupkom oduzimanja u prethodnom odjeljku, ovdje će funkcija DESNO prikazati posljednja 2 znaka iz ćelije B5 , a to će biti 34 .
Pročitajte više: Kako razdvojiti brojeve u jednoj ćeliji u Excelu (5 metoda)
3. Izdvajanje brojeva iz bilo kojeg dijela tekstualnog niza
Evo općeg rješenja za sve slučajeve. Ova metoda će izvući brojeve ili znamenke s bilo kojeg mjesta u tekstualnom nizu. Štoviše, koristit ćemo TEXTJOIN , IFERROR , INDIRECT , MID i ROW funkcije u ovoj metodi.
Koraci:
- Prvo upišite formulu u odredišnu ćeliju na sljedeći način-
=TEXTJOIN("",TRUE,IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),""))
- Zatim, ako koristite Excel 2016 ili noviju verziju, zatim pritisnite Enter , inače pritisnite Ctrl+Shift+Enter za dobiti rezultat za ovu formulu polja.
- Nakon ovog koraka, automatski popunite ostale ćelije pomoću Ručice za popunjavanje i gotovi ste.
🔎 Raščlamba formule
➤ INDIRECT(“1:”&LEN(B5))
- Funkcija INDIRECT koristi se za pohranjivanje niza vrijednosti ćelije kao referentni tekst. Ovdje naredba ampersend (&) povezuje duljinu znakova ćelije B5 sa sintaksom nepotpunog raspona (1:) .
- Dakle, ovdje će funkcija INDIRECT pohraniti sve brojeve između 1 i duljine znakova u ćeliji B5 kao referentni tekst.
➤ ROW(INDIRECT(“1:”&LEN(B5)))
- The
ROW obično govori broj retka ćelije. Ali ovdje u funkciji INDIRECT , budući da nije spomenuta referentna ćelija, u ovom će slučaju funkcija ROW izdvojiti sve vrijednosti ili brojeve iz referentnih tekstova pohranjenih u funkciji INDIRECT . - Sada, za 1. ćeliju B5 , rezultantne vrijednosti kroz ove ROW i INDIRECT funkcije bit će- {1;2;3;4;5;6; 7;8;9}.
➤ (MID(B5,ROW(INDIRECT(“1:”&LEN(B5))),1))
- Funkcija MID omogućit će vam da odredite znakove iz sredine tekstualnog niza, s obzirom na početnu poziciju & duljina.
- Dakle, ovdje za svih 9 pozicija pronađenih u prethodnom odjeljku, funkcija MID sada će prikazati sve znakove jedan po jedan za svaku poziciju & stoga će vratiti vrijednosti kao- {“1″;”9″;”“;”D”;”D”;”X”;”2″;”M”;”N”}.
➤ IFERROR((MID(B5,ROW(INDIRECT) (“1:”&LEN(B5))),1)*1),””)
- Sada, IFERROR je logička funkcija koja će odrediti je li niz broj ili nešto drugo. Ako ne identificira niz s brojevima ili znamenkama, tada će vratiti vrijednost s definiranom tekstualnom naredbom.
- U našem slučaju, sve vrijednosti pronađene u zadnjem odjeljku pomnožit će se s 1, i kada se rezultati vrate kao pogreške vrijednosti za slova ili tekstualne vrijednosti koje se ne mogu množiti, njihova IFERROR funkcija će pretvoriti pogreške u prazne nizove. Dakle, naše rezultantne vrijednosti bit će tada- {1;9;””;””;””;””;2;””;””}.
➤ =TEXTJOIN (“”,TRUE,IFERROR((MID(B5,ROW(INDIRECT(“1:”&LEN(B5))),1)*1),””))
- I sada će se završni dio izvršiti kroz TEXTJOIN funkciju. Ova se funkcija koristi za ulančavanje ili spajanje dva niza s određenim razdjelnikom.
- Dakle, rezultirajuće vrijednosti koje smo pronašli u prethodnom odjeljku sada će biti spojene uz ovaj TEXTJOIN funkcija. I tako ćemo dobiti broj 192.
Pročitajte više: Kako izdvojiti više brojeva iz niza u Excelu (6 metoda)
4. Ugniježđivanje više funkcija za izvlačenje samo brojeva
Sada ćemo vam pokazati još jednu formulu za izvlačenje samo brojeva s bilo koje pozicije iz Excelaćelija. Iako se može činiti prilično složenom, raščlanit ćemo cijelu formulu i pokušati s lakoćom objasniti sve kompaktne funkcije. Osim toga, koristit ćemo IF , LARGE , INDEX , SUMPRODUCT i ISNUMBER funkcije u ovoj formuli.
- Za početak, upišite ovu formulu u ćeliju C5 . Morate zamijeniti referencu ćelije samo na temelju vlastite ćelije u proračunskoj tablici, a zatim ćete ugradnjom ove formule odmah dobiti očekivani rezultat. A ova formula savršeno radi u bilo kojoj verziji programa Excel.
=IF(SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(--MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))* ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(B5)))/10),"")
- Nakon toga, morate pritisnuti Enter tek nakon što upišete cijelu formulu i gotovi ste.
🔎 Razlaganje formule
Prije nego što započnete s razlaganjem ovog ogromnog & kompaktnu formulu, možemo je razdvojiti na neke dijelove poput -
=IF(A>0, SUMPROIZVOD(B 1 *C 1 , B 2 *C 2 , ……….B n C n ),””)
Ova sintaksa znači da ako je A veće od 0, tada su svi umnošci od B n i C n će zbrojiti konačni rezultat. A ako A nije veće od 0, tada će se rezultat vratiti kao prazna ili prazna ćelija.
- A =SUM(LEN(B5)-LEN(ZAMJENA(B5, {“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″,”8″, ”9”}, “”
- B = MID(0&B5, LARGE(INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1) :$”&LEN(B5))),1))* ROW(INDIRECT(“$1:$”&LEN(B5))),0), ROW(INDIRECT(“$1:$”&LEN( B5))))+1,1)
- C = 10^RED(INDIREKT(“$1:$”&LEN(B5)))/ 10),””
Raščlamba dijela A = SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {“0″,”1″,”2″ ,”3″,”4″,”5”,”6″,”7″,”8″,”9”}, “”
➤ ZAMJENA(B5, { “0”,”1”,”2”,”3”,”4”,”5”,”6”,”7”,”8”,”9”}, “”)
- Funkcija SUBSTITUTE svaki put će pronaći sve znamenke (0-9) jednu po jednu u tekstu 19 DDX2MN i zamijeniti ih znamenki s praznim nizom na mjestima znamenki.
- Tako će rezultantne vrijednosti u nizu biti- {“19 DDX2MN”,”9 DDX2MN”,”19 DDXMN”,”19 DDX2MN”,” 19 DDX2MN”,”19 DDX2MN”,”19 DDX2MN”,”19 DDX2MN”,”19 DDX2MN”,”1 DDX2MN”}.
➤ LEN(SUBSTITUTE(B5, { “0″,”1”,”2”,”3”,”4”,”5”,”6”,”7”,”8”,”9”}, “”))
- The Funkcija LEN sada će brojati broj znakova u svim vrijednostima niza dobivenim iz prethodnog odjeljka. Dakle, ova funkcija će vratiti kao- {9,8,8,9,9,9,9,9,9,8}.
➤ LEN(B5)-LEN( ZAMJENA(B5, {“0”,”1”,”2”,”3”,”4”,”5”,”6”,”7”,”8”,”9”}, “”))
- Sada u ovom dijelu formule, broj znakova u ćeliji B5 će oduzeti sve brojeve pronađene u