Hoe kinne jo allinich sifers ekstrahearje fan Excel-sel (7 maklike manieren)

  • Diel Dit
Hugh West

Hoewol't Microsoft gjin rjochte formule of syntaksis levere hat om allinich nûmers út 'e Excel-sel te heljen, kinne wy ​​in breed oanbod fan Excel-formules opnimme om meitsje in inkele funksje dy't kin brûkt wurde foar it ekstrahearjen fan nûmers of sifers allinich út Excel-sellen. Yn dit artikel sille wy besykje yn detail sjen te litten en út te lizzen hoe't wy allinich nûmers út 'e sellen kinne bringe mei de passende formules ûnder in pear kritearia.

Oefenwurkboek downloade

Download de fergees oefenboek dat wy hawwe brûkt om dit artikel ta te rieden. Jo kinne de tekstwearden mei sifers yn de selektearre sellen ynfiere en de resultaten fuortendaliks fine fia ynbêde formules.

Nûmers út Cell.xlsm

7 effektive manieren om allinich sifers út Excel-sel te ekstrahearjen

D'r sil ien VBA-koade, ien Excel-funksje en fiif praktyske formules wêze om jo te helpen nûmers út in sel te heljen. Lykas yn 'e ôfbylding hjirûnder, hawwe wy guon koades ynklusyf sifers en letters wêr't sifers oan it begjin oanwêzich binne. Wy moatte allinich dy sifers of sifers ekstrahearje.

1. Sifers út it begjin fan in tekst útlûke

Yn dizze earste metoade sille wy kombinearje de LEFT , SUM , LEN en SUBSTITUTE funksjes om sifers út it begjin fan in tekststring te lûken. As earste sille wy dizze formule yn 'e sel ynfiere, ende foargeande seksje. De resultearjende wearden sille dan wêze- {0,1,1,0,0,0,0,0,0,1}.

SUM(LEN(B5)-LEN (SUBSTITUTE(B5, {"0","1","2","3","4","5","6","7","8","9"}, "") ))

  • Mei help fan de funksje SUM sille de wearden binnen de array fûn yn 'e lêste seksje 3 ( 0+1+1+0+0+0+0+0+0+1).
  • Dus, neffens it earste diel fan ús formule, A>0 (3>0) . No geane wy ​​nei it folgjende diel fan 'e ferdieling.

Utdieling fan diel 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))

  • De YNDIREKTE funksje hjir sil de tekenrige wearden opslaan as in ferwizing nei de array. Binnen de heakjes sil it kommando ampersand (&) gearfoegje oan it oantal karakters fûn yn sel B5 mei de syntaksis fan selberik. It betsjut dat fan 1 oant it oantal karakters definiearre, elk wurdt opslein as in arrayreferinsje.

ROW(INDIRECT(“$1:$”&LEN(B5)) )

  • No, dizze ROW -funksje sil alle nûmers út 'e array lûke en de resultearjende wearden foar sel B5 sil wêze- {1;2;3;4;5;6;7;8;9}.

MID(B5,ROW( INDIRECT(“$1:$”&LEN(B5))),1)

  • Yn dit diel fan 'e formule is deDe funksje MID sil alle tekens út sel B5 útdrukke op basis fan alle posysjes fûn as nûmers yn 'e foarige seksje. Dat, de ekstrahearre wearden sille wurde fûn nei dit diel- {“1″;”9″;” “;”D”;”D”;”X”;”2″;”M”;”N”}.

ISNUMBER(–MID(B5,ROW(INDIRECT ("$1:$"&LEN(B5))),1))

  • As ISNUMBER in logyske funksje is, sil yndividueel bepale as de wearden fûn yn 'e foargeande seksje nûmerstrings binne of net. As ja, dan sil it weromkomme as TRUE , oars sil it werjaan as FALSE .
  • Dus, yn ús gefal, sil it resultaat wêze- { TRUE; TRUE; FALSE; FALSE; FALSE; FALSE; TRUE; FALSE; FALSE}.

INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1:$” &LEN(B5))),1))*ROW(INDIRECT(“$1:$”&LEN(B5))),0)

  • As jo ​​​​yn 'e boppesteande funksje, in dûbel-hyphen, bekend as Double Unary , is brûkt. It wurdt brûkt om alle logyske wearden te konvertearjen yn getalstrings- 1(TRUE) of 0(FALSE) . No sil de funksje INDEX dit resultaat weromjaan as- {1;1;0;0;0;0;1;0;0}.
  • Nei dat, de resultearjende wearden wurde fermannichfâldige mei de wearden krigen fan de ROW funksje binnen de array en de útkomst sil wêze- {1;2;0;0;0;0; 7;0;0}.

LARGE(INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1:$”&LEN(B5))),1 ))*ROW(INDIRECT(“$1:$”&LEN(B5))),0),ROW(INDIRECT(“$1:$”&LEN(B5))))

  • De funksje LARGE sil no de grutste werrangearje wearden út de array neffens de posysjes basearre op de nûmers fûn yn de ROW funksjes. & amp; ús resultearjende wearden foar dizze seksje fan 'e formule sille wêze- {7;2;1;0;0;0;0;0;0}.

MID(0&B5 , LARGE(INDEX(ISNUMBER(–MID(B5,ROW(INDIRECT(“$1:$”&LEN(B5))),1))*RIJ(INDIRECT(“$1:$”&LEN(B5)) ),0), ROW(INDIRECT(“$1:$”&LEN(B5))))+1,1)

  • No, dit diel fan 'e funksje sil gearfoegje 0 mei de teksten yn sel B5 . Dan sil it 1 yndividueel tafoegje mei alle nûmers fûn yn 'e lêste seksje en de tekens sjen litte fan B5 sel basearre op de definieare nûmerposysjes.
  • Dus, ús útkomst fan dizze seksje sil wêze- {“2″;”9″;”1″;”0″;”0″;”0″;”0″;”0”;”0” }.

Oerdieling fan diel C = (10^ROW(INDIRECT(“$1:$”&LEN(B5)))/10),,””)

  • Dit diel sil bepale de foegen fan 10 & amp; bewarje se yn 'e array. De sifers fan de machten binne de nûmers fûn út de ROW funksje earder.
  • Dit diel fan 'e formule sil de wearden werombringe as- {1;10;100 ;1000;10000;100000;1000000;10000000;100000000}.

Fermannichfâldigje fan B n en C n

  • No sille de resultearjende wearden fan 'e lêste twa grutte ôfbraak fan B en C nowurde fermannichfâldige binnen de array. Dan wurde de produkten fûn út de fermannichfâldigingen- {2;90;100;0;0;0;0;0;0}.
  • En as lêste, de SUMPRODUCT De funksje sil dizze wearden optelle yn 'e array. Dat, ús definitive útkomst sil 192 wêze (2+90+100+0+0+0+0+0+0) , dat is de ekstrahearre nûmers út sel B5 .

Lês mear: Hoe kinne jo tekst en sifers skiede yn Excel (4 maklike manieren)

5. Fiif sifers nûmers ekstrahearje fan tekenrige

Wy sille in oare formule brûke om fiif sifers nûmers út elk diel fan in tekenrige yn Excel te ekstrahearjen. Wy sille de funksjes CONCAT en SEQUENCE foar it earst yn dizze seksje brûke. Boppedat hawwe wy ús dataset wat feroare foar dizze metoade.

Stappen:

  • Selektearje earst it selberik C5:C12 .
  • Taard, typ de folgjende formule.

=CONCAT(IFERROR(0+MID(B5,SEQUENCE(LEN(B5)),1),""))

  • Druk as lêste op Ctrl+Enter .

🔎 Formule-ûnderdieling

  • LEN(B5)
    • Utfier: 11 .
    • Dizze funksje jout de lingte fan de tekenrige werom.
  • SEQUENCE(11)
    • Utfier: {1;2;3;4;5; 6;7;8;9;10;11} .
    • Dizze funksje jout de earste alve nûmers werom.
  • MID(B5,{1;2 ;3;4;5;6;7;8;9;10;11},1)
    • Utfier: {“1″;”9″;” ";"D";"D";"X";"2";"M";"N";"3";"3"} .
    • It brûken fan dit diel, wy binneit opheljen fan de yndividuele tekens út de tekenrige.
  • 0+{“1″;”9″;” ";"D";"D";"X";"2";"M";"N";"3";"3"}
    • Utfier: {1;9; #VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;3;3} .
    • As wy nul tafoegje mei in tekenrige, sil it jout in flater werom.
  • IFERROR({1;9;#VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;3 ;3},"")
    • Utfier: {1;9;"";"";"";"";2;"";"";3;3} .
    • Wy wurde leech foar alle flaterwearden.
  • CONCAT({1;9;"";"";"";"";2;" ”;””;3;3})
    • Utfier: 19233 .
    • Uteinlik foegje wy alle wearden ta om allinich fiif sifers nûmers út te heljen.

6. Flash Fill brûke om nûmers binnen in berik te ekstrahearjen

Gebrûk fan de Flash Folje -funksje is makliker en ienfâldiger dan elke oare hjirboppe neamde metoade. Wy sille nûmers ekstrahearje fan elke posysje yn 'e tekststrings. Om dizze metoade goed út te fieren, moatte wy Excel helpe om it patroan fan 'e selwearden yn in kolom of in rige te finen troch allinich de ekstraksje te dwaan foar de earste twa wearden.

Stappen:

  • Om te begjinnen, typ de nûmers mei de hân yn sel C5 .

  • Begjin dan de nûmers te typen fan sel B6 nei sel C6 en Excel sil automatysk it patroan werkenne.
  • Druk as lêste op Enter .

Opmerkingen: Dizze metoade hat watneidielen, en dêrom is it net oan te rieden foar alle gefallen as jo nûmers moatte ekstrahearje út tekststrings. De Flash Fill folget normaal in patroan út de sellen yn in kolom of in berik. Dat, de earste 2 of 3 ekstraksjes of berekkeningen moatte manuell dien wurde om Excel te helpen it mienskiplike patroan fan 'e resultearjende wearden op te nimmen. Mar soms folget it net it krekte patroan dat wy nedich binne, en dêrtroch sil it syn eigen patroan folgje en jo in net oerienkommend resultaat jaan.

As wy bygelyks twa nullen (00) moatte útpakke út de gegevens jûn, it soe sjen litte mar ien nul, net twa. As jo ​​dan nûmers út it begjin of de lêste posysjes yn in sel ekstrahearje wolle, sil it ek tekstwearden ekstrahearje, tegearre mei de nûmers.

Lês Mear: Hoe nûmers ekstrahearje nei in spesifike tekst yn Excel (2 geskikte manieren)

7. VBA-koade tapasse om allinich sifers út Excel-sel te ekstrahearjen

As jo ​​ynteressearre binne yn it brûken fan de Excel VBA Macro om nûmers allinich út 'e sellen te heljen, dan wolle jo de stappen hjirûnder folgje. Wy sille jo sjen litte hoe't jo de koade ynfiere yn it VBA-module -finster. Dizze koade sil de brûker freegje om de ynfier- en útfierselbereiken op te jaan.

Stappen:

  • Earst druk op ALT+F11 om it finster VBA te iepenjen.
  • Selektearje dan fan it ljepblêd Ynfoegje it kommando Module . In nije modulefinster sil ferskine wêr't jo de koades ynfiere.

  • Tredde plak yn jo module de folgjende koades nei it kopiearjen.
4685

  • Druk dêrnei op F5 om de koade út te fieren. In dialoochfinster mei de namme " Input Data Selection " sil ferskine.
  • Selektearje dan alle tekstsellen (d.w.s. B5:B12 ) en druk op OK .

  • Dêrnei in oar dialoochfinster mei de namme " Utfiersel seleksje " sil ferskine wêr't jo in bepaalde sel of berik fan sellen moatte selektearje om de útfiergegevens of wearden te sjen.
  • Selektearje as lêste it selberik C5:C12 en druk op Enter .

  • Dêrtroch sille jo de ekstrahearre nûmers sjen fan de teksten yn ien kear. Sa sille wy de sân rappe metoaden ôfmeitsje om nûmers allinich út Excel-sel te ekstrahearjen.

🔎 VBA-koade-ôfdieling

Parameters ferklearje

1379
  • Hjir yn dit diel earstoan ferklearje wy alles ús parameters as hiele getallen, tekenrige wearden, of berik fan sellen. Dan jouwe wy de nammen fan ús dialoochfinsters mei “Input Data Selection” en “Output cell Selection” .

It definiearjen fan de soarten yngongen & amp; Utfier foar dialoochfinsters

2114
  • No definiearje wy de parameters en harren typen foar de dialoochfinsters. Hjir, tafoegjen fan Type:=8 betsjut deynfier- en útfiergegevens sille bestean út referinsjesellen of in berik fan sellen.
  • Wy definiearje ek dat as ynfiergegevens net fûn wurde, dan sil de subroutine stopje. Troch dizze makro te neamen, sil de subroutine net ôfbrekke foar ûntbrekkende gegevens, mar leaver stopje se mei funksjonearjen.

Kombinearjen fan de funksjes binnen de koadelussen Iteraasjes

4052
  • Lêst fan alles is dit it meast krúsjale diel wêr't wy de funksjes of formules tapasse dy't wy moatte tawize oan de teksten om de resultearjende wearden te finen út 'e stringen .
  • Ien fan 'e grutte foardielen fan it kodearjen fan in funksje foar Excel is dat it net nedich is om in grutte formule te typen lykas wy moasten dwaan yn eardere metoaden, om't VBA ynboude kommando's hat om For- of While-lussen te brûken wêr't iteraasje foar elk detail yn in tekststring kin wurde útfierd sûnder gedoe.

Lês mear: How to Separate Numbers From Text in Excel VBA (3) Metoaden)

Konklúzje

Wy hawwe jo 7 maklike metoaden sjen litten om allinich nûmers út in Excel-sel te heljen. It útheljen fan allinnich sifers út in tekst tekenrige is net sa ienfâldich as it liket omdat it fereasket in kombinaasje fan meardere funksjes, dy't makket de definitive formule of syntaksis yngewikkeld. Mar wy hoopje dat hoe't wy hawwe besocht de formules te yllustrearjen troch de ynderlike funksjes te brekken hat jo holpen om de syntaksis te begripen mei in bytsje treast engemak.

As jo ​​oare funksjes of formules fine dy't wy hjir tafoege hawwe moatten, lit it ús dan witte troch jo weardefolle opmerkings. Of jo kinne in blik sjen op ús mear ynformative en nijsgjirrige artikels yn ferbân mei Excel-funksjes op dizze webside.

dan, mei it Fill Handle , kopiearje wy dy formule nei de rest fan de sellen.

Stappen:

  • Typ earst de formule yn sel C5 .

=LEFT(B5,SUM(LEN(B5)-LEN(SUBSTITUTE(B5,{"0","1","2","3","4","5","6","7","8","9"},""))))

  • Twadde, druk op Enter en jo krije it nûmer 34 foar de earste koade.

  • Brûk as tredde de Fillhandtak en dan om alle oare sellen yn kolom C<3 automatysk yn te foljen> .

🔎 Formule-ûnderdieling

SUBSTITUTE(B5,{“0″,"1″,"2″,"3″,"4″,"5″,"6″,"7″,"8″,"9″}, ””)

  • Hjir sil de funksje SUBSTITUTE de sifers (0-9) efterinoar fine en, as fûn, sil it ferfange dat sifer yn sel B5 mei elke kear in leech karakter. Dat, de funksje sil weromkomme as- {“34DTXRF”,,”34DTXRF”,,”34DTXRF”,,”4DTXRF”,,”3DTXRF”,,”34DTXRF”,,”34DTXRF”,,”34DTXRF”,,”34DTXRF”,,”34DTXRF”}.

LEN(SUBSTITUTE(B5;{“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7 ″,"8″,"9″},""))

  • De funksje LEN bepaalt it oantal tekens yn in tekenrige . Dus, hjir sil de funksje LEN alle karakters telle dy't yndividueel fûn binne yn 'e teksten fia de funksje SUBSTITUTE . De resultearjende wearden sille hjir yn ús gefal wêze - {7,7,7,6,6,7,7,7,7,7}.

LEN(B5)- LEN(SUBSTITUTE(B5;{"0","1","2","3","4","5","6","7","8","9"},"" )))

  • No, dit diel is desubtraksje fan it oantal karakters yn sel B5 oan alle oare oantallen karakters dy't yndividueel fûn binne yn 'e foarige seksje fan' e formule. Dus, hjir sille de resultearjende wearden wêze - {0,0,0,1,1,0,0,0,0,0}.

SUM(LEN(B5) -LEN(SUBSTITUTE(B5,{"0","1","2","3","4","5","6","7","8","9"}," ”)))

  • De funksje SUM sil dan gewoan alle fûne subtrahearre wearden optelle & amp; dus it resultaat sil hjir wêze, 2 (0+0+0+1+1+0+0+0+0+0).

= LEFT(B5,SUM(LEN(B5)-LEN(FERSTATJE(B5;{"0","1","2","3","4","5","6","7", ”8″,”9″},””))))

  • En hjir is it lêste diel wêr't de funksje LEFT sil jout de wearden werom mei in krekte oantal tekens fan links fûn yn 'e foarige seksje fan' e formule. Om't wy de somwearde as 2 krigen, sil de funksje LEFT hjir allinnich 34 weromkomme út de tekst 34DTXRF .

Related: Hoe kinne jo nûmers skiede yn Excel mei formule (5 manieren)

2. Sifers ekstrahearje út de Rjochterkant fan in tekst

Yn dizze seksje sille wy de sifers of sifers ekstrahearje fan 'e rjochterkant fan' e tekststring. Wy sille hjir de funksjes RJOCHTS , MIN en SEARCH brûke.

Stappen:

  • Om te begjinnen, yn ús dataset wat wy moatte type yn sel C5 is-

=RIGHT(B5,LEN(B5) - MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&"0123456789")) +1)

  • Druk dêrnei op Enter en brûk dan de Fillhandtak om de rest fan de sellen automatysk yn te foljen.

🔎 Formule-ûnderdieling

B5&”0123456789″

  • Hjir ferbine wy ​​wearden yn 'e B5 sel mei 0123456789 troch ampersand (&) tusken te brûken se en wy krije de resultearjende wearde as- DTXRF340123456789.

SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&”0123456789″)

  • No sil de funksje SEARCH alle sifers (0-9) ien foar ien sykje yn de resultearjende wearde krigen fan 'e foarige seksje en sil de posysjes fan dy 10 sifers weromjaan yn' e tekens fan DTXRF340123456789 . Dus, hjir sille ús resultearjende wearden wêze- {8,9,10,6,7,13,14,15,16,17}.

MIN(SEARCH({0 ,1,2,3,4,5,6,7,8,9}, B5&”0123456789″))

  • De MIN De funksje wurdt brûkt om it leechste sifer of nûmer yn in array te finen. Dus, hjir sil de minimale of leechste wearde- 6 wêze fan 'e array {8,9,10,6,7,13,14,15,16,17} fûn yn' e foargeande seksje fan 'e formule .

LEN(B5) – MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&"0123456789″ )) +1)

  • No, it oantal tekens yn B5 sil fûn wurde troch de LEN funksje. Dan sil it de wearde 6 (fûn yn 'e lêste seksje) subtractearje en dan it resultaat weromjaan troch 1 ta te foegjen. Hjir yn ús gefal, deresultante wearde sil 2 (7-6+1) wêze.

RJOCHTS(B5,LEN(B5) – MIN(SEARCH({0,1, 2,3,4,5,6,7,8,9}, B5&”0123456789″)) +1)

  • De RJOCHTS De funksje sil it opjûne oantal tekens weromjaan fan 'e lêste of rjochterkant fan in tekenrige. Nei it resultaat fûn troch it subtraksjeproses yn 'e foarige seksje, hjir sil de funksje RJOCHTS de lêste 2 tekens fan sel sjen litte B5 , en dat sil 34 wêze.

Lês mear: How to Separate Numbers in One cell in Excel (5 Methods)

3. Sifers ekstrahearje út elk diel fan in tekststring

No, hjir is in brede oplossing foar alle gefallen. Dizze metoade sil sifers of sifers lûke út elke posysje yn in tekststring. Boppedat sille wy de TEXTJOIN , IFERROR , INDIRECT , MID en ROW funksjonearret yn dizze metoade.

Stappen:

  • Typ earst de formule yn jo bestimmingsel as folget-

=TEXTJOIN("",TRUE,IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),""))

  • Dan, as jo brûke Excel 2016 of hegere ferzje, druk dan op Enter , druk oars op Ctrl+Shift+Enter om krij it resultaat foar dizze arrayformule.
  • Nei dizze stap, folje oare sellen automatysk yn mei de Fill Handle en jo binne klear.

🔎 Formule-yndieling

INDIRECT(“1:”&LEN(B5))

  • De funksje INDIRECT wurdt brûkt om in array fan selwearden as referinsjetekst. Hjirmei ferbynt it ampersand (&) kommando de lingte fan de tekens fan sel B5 mei ûnfolsleine beriksyntaksis (1:) .
  • Dus, hjir sil de funksje INDIREKTE alle nûmers opslaan tusken 1 en de lingte fan de tekens yn sel B5 as referinsjetekst.

ROW(INDIRECT(“1:”&LEN(B5)))

  • De ROW funksje fertelt normaal it rigenûmer fan in sel. Mar hjir yn 'e funksje YNDIREKTE , om't gjin referinsjesel neamd is, yn dit gefal sil de funksje RIJ alle wearden of nûmers út de referinsjeteksten opslein yn de funksje INDIRECT .
  • No, foar de 1e sel B5 , de resultearjende wearden troch dizze RIJ en YNDIREKTE funksjes sille wêze- {1;2;3;4;5;6; 7;8;9}.

(MID(B5,ROW(INDIRECT(“1:”&LEN(B5))),1))

  • De MID funksje lit jo bepale de tekens út 'e midden fan in tekst tekenrige, jûn in startposysje & amp; lingte.
  • Sa, hjir foar alle 9 posysjes fûn yn de foarige seksje, de MID funksje no sil sjen litte alle tekens ien foar ien foar eltse posysje & amp; sil dus de wearden werombringe as- {"1";"9";"“;”D”;”D”;”X”;”2″;”M”;”N”}.

IFERROR((MID(B5,RIJ(INDIRECT ("1:"&LEN(B5))),1)*1),"")

  • No, de IFERROR is in logyske funksje dy't sil bepale oft in tekenrige is in nûmer of wat oars. As it gjin tekenrige identifisearret mei sifers of sifers, dan sil it de wearde weromjaan mei in definiearre tekstkommando.
  • Yn ús gefal wurde alle wearden fûn yn 'e lêste seksje fermannichfâldige mei 1, en as de resultaten weromjûn wurde as weardeflaters foar letters of tekstwearden dy't net fermannichfâldigje kinne, sil har IFERROR funksje de flaters omsette yn lege snaren. Dus, ús resultearjende wearden sille dan- {1;9;””;””;””;””;2;””;””} wêze.

=TEXTJOIN ("", TRUE,IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),""))

  • En no sil it lêste diel wurde útfierd fia de funksje TEXTJOIN . Dizze funksje wurdt brûkt om twa stringen te ferbinen of te ferbinen mei in spesifisearre skiedingsteken.
  • Dus, de resultearjende wearden dy't wy fûn hawwe yn 'e foargeande seksje sille no tegearre wurde njonken dizze TEXTJOIN funksje. En sa krije wy it nûmer 192.

Lês mear: Hoe kinne jo meardere nûmers út string yn Excel ekstrahearje (6 metoaden)

4. Meardere funksjes nestelje om allinich sifers út te bringen

No sille wy jo in oare formule sjen litte om allinich nûmers út elke posysje út in Excel te ekstrahearjensel. Hoewol it frij kompleks liket, sille wy de heule formule brekke en besykje alle kompakte funksjes maklik te ferklearjen. Derneist sille wy de IF , GROOT , INDEX , SUMPRODUCT , en ISNUMBER funksjes yn dizze formule.

  • Om te begjinnen, typ dizze formule yn sel C5 . Jo moatte de selferwizing allinich ferfange op basis fan jo eigen sel yn it spreadsheet en dan troch dizze formule yn te setten, krije jo fuortdaliks it ferwachte resultaat. En dizze formule wurket perfekt yn elke ferzje fan 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),"")

  • Dêrnei moatte jo pas op Enter drukke nei it typen fan de folsleine formule en jo binne dien.

🔎 Formule-ôfdieling

Foar it begjin fan de ôfbraak fan dizze massive & amp; kompakte formule, kinne wy ​​it skiede yn guon dielen lykas-

=IF(A>0, SUMPRODUCT(B 1 *C 1 , B 2 *C 2 , ….B n C n ),"")

Dizze syntaksis betsjut as A grutter is as 0, dan alle produkten fan B n en C n sille optelle ta it einresultaat. En as A net grutter is as 0 dan komt it resultaat werom as in lege of lege sel.

  • A =SUM(LEN(B5)-LEN(SUBSTITUTE(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^ROW(INDIRECT(“$1:$”&LEN(B5)))/ 10),""

Oerdieling fan diel A = SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0","1","2" ,”3″,”4″,”5″,”6″,”7″,”8″,”9”}, “”

FERGESE(B5, { "0","1","2","3","4","5","6","7","8","9"}, "")

  • De funksje SUBSTITUTE sil alle sifers (0-9) ien foar ien fine yn 'e tekst 19 DDX2MN elke kear en sil dy ferfange sifers mei in lege tekenrige yn de posysjes fan de sifers.
  • Sa wurde de resultante wearden yn in array- {“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"}, ""))

  • De De funksje LEN sil no it oantal karakters telle yn alle tekenrige wearden krigen fan de foarige seksje. Dus, dizze funksje sil weromkomme as- {9,8,8,9,9,9,9,9,9,8}.

LEN(B5)-LEN( SUBSTITUTE(B5, {"0","1","2","3","4","5","6","7","8","9"}, ""))

  • No yn dit diel fan 'e formule sil in oantal karakters yn sel B5 alle nûmers dy't fûn binne yn subtrahearje

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.