Väljavõtte numbrid stringist (sisukord)
- Sissejuhatus keelpillide ekstraheerimisest
- Kuidas ekstraheerida numbreid stringist Excelis?
Sissejuhatus keelpillide ekstraheerimisest
Excel on tööriist, mis on samal ajal väga mitmekülgne ja kompaktne. Teatavate tähemärkide eraldamiseks tekstistringist pakub see hulga valemeid, näiteks LEN, RIGHT, LEFT, SEARCH, kasutades seda, kas eraldi või koos, saame vajaliku tähemärgi teada. Kui aga tegemist on numbrite ekstraheerimisega stringist, mis sisaldab tähemärki ja numbreid, siis Microsoft Excel ei anna selle jaoks konkreetset valemit. Kuid numbrite eraldamine stringist pole sugugi võimatu. See pole kindlasti nii lihtne kui märkide eraldamine stringidest, kuid samas ka mitte võimatu. Vaja on ainult kannatlikkust, mõnda üksteise sisse paigutatud funktsiooni kombinatsiooni. See viib teid läbi. Võtame mõned näited ja vaatame, kuidas saaksime numbrid tekstireast eraldada.
Kuidas ekstraheerida numbreid stringist Excelis?
Numbrite eraldamine stringist on väga lihtne ja hõlbus. Mõistame mõne näite abil, kuidas ekstraheerida arv stringist Excelis.
Selle ekstraheerimisnumbri saate stringi mallist alla laadida siit - numbrimärkide eraldamise numbri mallistNäide nr 1 - kuidas eraldada paremalt paigutatud numbreid
Nagu võis näha stringidest märkide ekstraheerimisel, on kõige tähtsam, mida peaksime teadma, viimase positsiooni asukoht. Kui see on leitud, saame tähemärkide eraldamiseks tekstist kasutada parempoolset funktsiooni. Sarnastel ridadel tahaksime teada stringi esimese numbri / numbri asukohta.
Oletame, et meil on allpool toodud andmed:
Kasutage lahtris B2 järgmist valemit, et saada teada, kust ekstraheerimine / jagamine algab. Allpool esitatud valem annab tulemuseks esimese numbri positsiooni, mis ilmub segastringis.
Pärast valemi kasutamist lahtris B2 on väljund näidatud allpool.
Lohistage see valem kuni number kuus. Näete tulemusi järgmiselt:
Numbrid veeru B igas lahtris tähistavad esimese numbri asukohta stringi igas veerus A asuvas lahtris.
Kasutage parempoolse ja LEN-funktsiooni kombinatsiooni, et eraldada numbrid stringist veerust C. Pange järgmine valem lahtrisse C2 ja vajutage sisestusklahvi.
Pärast valemi rakendamist kõigile lahtritele peaksite väljundi saama järgmiselt.
Selles valemis tahtsime lahtris A2 olevast stringist eraldada ainult numbrid. Samuti on kõik numbrid lahtri paremas servas. Seetõttu kasutame argumendina algul funktsiooni PAREMA, A2-ga. Selles funktsioonis kasutasime funktsiooni LEN, mis võtab pikkuse A2 ja lahutab sellest B2 (mis sisaldab stringi esimest numbri asukohta). Lisame sinna ka ühe, nii et ka esimene number lisatakse tulemuse alla.
Lohistage valemit, kuni veerus C on number viis.
Kui oleksite võinud märkida veerus C esitatud tulemusi, on kõik numbrid joondatud vasakule. Mis tähendab, et neid hoitakse tekstina veerus C. Selle põhjuseks on asjaolu, et antud teksti numbrite leidmiseks oleme kasutanud valemeid nagu RIGHT, LEN. Kõigi veeru C igas lahtris sisalduvate tekstiväärtuste teisendamiseks toimige järgmiselt.
Näide nr 2 - VBA-kood numbrite ekstraheerimiseks segastringi kaudu
Mida me just tegime, saab samadel ridadel teha ka Macro / VBA koodi kasutades. Makro eeliseks oleks see - see automatiseerib süsteemi ja kui kood on valmis ning seadistatud, ei pea te seda enam redigeerima. Numbriliste väärtuste eraldamiseks kasutage sama makrot ikka ja jälle erineva segastringide komplekti jaoks.
Minge vahekaardile Arendajad ja klõpsake nuppu Visual Basic.
Klõpsake ülemisel lindil oleval vahekaardil Insert ja avage selle kaudu uus moodul.
Määratlege uus alaprotseduur, mille alusel saame makro salvestada.
Nüüd kopeerige järgmine kood ja kleepige see antud alamprotseduuri kohaselt.
Siin on kood jagatud kolmeks osaks -
- Esiteks on muutuja initsialiseerimine, mis hoiab stringist eraldatud arvulisi väärtusi.
- Teise osa all peate läbima vahemiku, milles väärtused esinevad, ja soovite numbri eraldada.
- Kolmas ja viimane osa sisaldab silmust, mis võimaldab teil eraldada antud stringist numbreid ja salvestada selle antud veeru alla.
Käivitage see kood, vajutades ülemisele paanile pandud nuppu F5 või Käivita.
Väljundit näete oma töölehe B veerus. Mis sisaldab ainult tegelikust stringist eraldatud numbreid.
- Selle VBA-koodi eeliseks on see, et see töötab mis tahes stringi korral ja kus on numbrite asukoht ükskõik kus. Vahel. Kuigi esimeses näites kasutatud valem on piiratud stringidega, milles numbrid asuvad stringi paremal.
- Need on kaks viisi, mille abil saame antud segatud stringist numbreid hõivata ja neist välja tõmmata. Ma kinnitan teile, et neid on veel palju. Kuid need kaks on need, mida see artikkel on käsitlenud.
Mässime asjad mõne meeldejääva asjaga kokku.
Stringist eraldatavate numbrite meeldejätmine
- Esimeses näites on kõik, mida me kasutasime, tekstifunktsioonid nagu PAREM ja LEN. Nende valemite tulemused on ainult tekst (paarisarvud salvestatakse tekstidena). Kui soovite, et need teisendataks tegelikeks arvväärtusteks, kasutage funktsiooni VALUE, kuhu tuleks sisestada kogu valem.
- Valemimeetod on natuke keeruline, kuid võib töötada samal ajal tuhandete rakkudega. Sellel puudub aga mitmekülgsus. Sarnaselt ühele kasutasime ka esimest näidet. See valem töötab ainult siis, kui teie arvväärtused asuvad tegeliku stringi paremas servas.
- VBA makro abil saate tulemusi saada vaid ühe klõpsuga. Sõltumata positsioonist, kus teie number kuulub tegelikku stringi. See on makro eelis (kuid protsesside automatiseerimiseks peate makro kirjutamiseks olema piisavalt korralik).
Soovitatavad artiklid
See on juhend numbri ekstraheerimiseks stringidest. Siin arutleme, kuidas Excelis stringi arvu ekstraheerida, koos praktiliste näidete ja allalaaditava Exceli malliga. Samuti saate tutvuda meie teiste soovitatud artiklitega
- Exceli funktsiooni alamstring
- Loendage nimesid Excelis
- Kuidas andmeid Excelis sobitada
- 3D-lahtri viide Excelis