Excel: hoe getallen uit een string te extraheren
U kunt de volgende formule gebruiken om getallen uit een tekenreeks in Excel te extraheren:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
Deze specifieke formule haalt alle getallen uit de string in cel A2 .
Als cel A2 bijvoorbeeld de uitdrukking ’25 fietsen‘ bevat, retourneert deze formule eenvoudigweg 25.
Het volgende voorbeeld laat zien hoe u deze formule in de praktijk kunt gebruiken.
Voorbeeld: Haal getallen uit een string in Excel
Stel dat we de volgende lijst met tekenreeksen in Excel hebben:
Stel dat we alleen de getallen uit elke string willen extraheren.
Om dit te doen, kunnen we de volgende formule in cel B2 typen:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
We kunnen vervolgens op de formule klikken en deze naar elke resterende cel in kolom B slepen:
Kolom B bevat nu alleen de cijfers van elk van de overeenkomende tekenreeksen in kolom A.
Hoe werkt deze formule?
Onthoud de formule die we gebruikten om getallen uit tekenreeksen te halen:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
Zo werkt deze formule:
Eerst retourneert ROW(INDIRECT(“1:”&LEN( A2 ))) een reeks getallen van 1 tot de lengte van de tekenreeks.
Vervolgens converteert (MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1) alle tekens in de tekst naar #VALUE! Fouten.
Vervolgens verwijdert IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””) alle $VALUE! Fouten.
Ten slotte verzamelt TEXTJOIN(“”,TRUE,IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””)) alle resterende getallen en negeert spaties .
Het eindresultaat is dat we alleen de getallen uit elke string kunnen extraheren.
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in Excel kunt uitvoeren:
Excel: tekst tussen twee tekens extraheren
Excel: tekst extraheren na een teken
Excel: tekst extraheren vóór een teken