Note: The other languages of the website are Google-translated. Back to English
English English

Strip of verwijder niet-numerieke tekens uit tekstreeksen

Soms moet u mogelijk alle niet-numerieke tekens uit de tekstreeksen verwijderen en alleen de nummers behouden zoals hieronder wordt getoond. Dit artikel introduceert enkele formules om deze taak in Excel op te lossen.


Verwijder of verwijder alle niet-numerieke tekens uit tekstreeksen met formules

In Excel 2019 en Office 365 kan een nieuwe TEXTJOIN-functie in combinatie met de IFERROR-, MID-, ROW- en INDIRECT-functies u helpen om alleen getallen uit een tekstreeks te extraheren, de generieke syntaxis is:

=TEXTJOIN("",TRUE,IFERROR(MID(text,ROW(INDIRECT("1:100")),1)+0,""))
  • text: de tekstreeks of celwaarde waaruit u alle niet-numerieke tekens wilt verwijderen.

1. Kopieer of typ de onderstaande formule in een lege cel waar u het resultaat wilt uitvoeren:

=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))

2. En druk dan op Ctrl + Shift + Enter toetsen samen om het eerste resultaat te krijgen, zie screenshot:

3. Selecteer vervolgens de formulecel en sleep vervolgens de vulgreep naar de cellen waarop u deze formule wilt toepassen, alleen getallen zijn geëxtraheerd en alle andere niet-numerieke tekens zijn verwijderd, zie screenshot:


Verklaring van de formule:

RIJ (INDIRECT ("1: 100"): Nummer 1: 100 in de INDIRECTE formule betekent dat de MID-functie 100 tekens van de tekstreeks evalueert. Deze array bevat 100 getallen zoals deze: {1; 2; 3; 4; 5; 6; 7; 8 .... 98; 99; 100}.
Opmerking:: Als uw tekstreeks veel langer is, kunt u het getal 100 naar behoefte wijzigen in een groter getal.

MIDDEN (A2, RIJ (INDIRECT ("1: 100")), 1: Deze MID-functie wordt gebruikt om tekst in cel A2 te extraheren om één teken te krijgen, en het zal een array als deze:
{"5"; "0"; "0"; ""; "K"; "u"; "t"; "o"; "o"; "l"; "s"; ""; "f" ; "o"; "r"; ""; "E"; "x"; "c"; "e"; "l"; ""; ""; ""; ""; ""; "". ..}

MID(A2,ROW(INDIRECT("1:100")),1)+0: Door een 0-waarde toe te voegen nadat deze array wordt gebruikt om de tekst naar een getal te forceren, wordt de numerieke tekstwaarde geconverteerd naar een getal en worden niet-numerieke waarden weergegeven als #VALUE-foutwaarde als volgt:
{"5"; "0"; "0"; # WAARDE!; # WAARDE!; # WAARDE!; # WAARDE!; # WAARDE!; # WAARDE! !;#WAARDE! !;#WAARDE!...}

IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0: Deze IFERROR-functie wordt gebruikt om alle foutwaarden te vervangen door een lege string zoals deze:
{"5"; "0"; "0"; ""; ""; ""; ""; ""; ""; ""; ""; …}

TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,"")): Eindelijk zal deze TEXTJION-functie alle niet-lege waarden in de array combineren die zijn geretourneerd door de IFFERROR-functie en het resultaat retourneren.


Opmerkingen:

1. Met de bovenstaande formule worden de getallen geretourneerd als tekstformaat, als u een echte numerieke waarde nodig heeft, past u deze formule toe, vergeet niet om op te drukken Ctrl + Shift + Enter toetsen samen om het juiste resultaat te krijgen.

=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))+0

2. In eerdere versies van Excel zal deze formule niet werken, in dit geval kan de volgende formule u helpen, kopieer of voer deze formule in een lege cel in:

=SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)) * ROW(INDIRECT("1:"&LEN(A2))), 0), ROW(INDIRECT("1:"&LEN(A2))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(A2)))/10)


Verwijder of verwijder alle niet-numerieke tekens uit tekstreeksen met een eenvoudige functie

Misschien is het te lang om de bovenstaande formules te onthouden, hier zal ik de Kutools for Excel voor jou, met zijn Tekens verwijderen functie kunt u numerieke, alfabetische, niet-afdrukbare of alfanumerieke tekens uit tekstreeksen verwijderen met slechts enkele klikken. Klik om Kutools voor Excel gratis uit te proberen!


Gebruikte relatieve functies:

  • TEXTJOIN:
  • De TEXTJOIN-functie voegt meerdere waarden uit een rij, kolom of celbereik samen met een specifiek scheidingsteken.
  • MID:
  • De MID-functie wordt gebruikt om een ​​bepaald aantal tekens uit het midden van een gegeven tekstreeks te zoeken en terug te sturen.
  • ROW:
  • De Excel ROW-functie retourneert het rijnummer van een verwijzing.
  • INDIRECT:
  • De Excel INDIRECT-functie converteert een tekstreeks naar een geldige verwijzing.
  • IFERROR:
  • De functie ALS.FOUT wordt gebruikt om een ​​aangepast resultaat te retourneren wanneer een formule een fout evalueert, en om een ​​normaal resultaat te retourneren wanneer er geen fout is opgetreden.

Meer artikelen:


De beste tools voor kantoorproductiviteit

Kutools for Excel - Helpt u zich te onderscheiden van de menigte

Wilt u uw dagelijkse werkzaamheden snel en perfect afronden? Kutools voor Excel biedt 300 krachtige geavanceerde functies (werkmappen combineren, optellen op kleur, celinhoud splitsen, datum converteren, enzovoort ...) en 80% tijd voor u besparen.

  • Ontworpen voor 1500 werkscenario's, helpt u 80% Excel-problemen op te lossen.
  • Verminder elke dag duizenden toetsenbord- en muisklikken, verlicht uw vermoeide ogen en handen.
  • Word een Excel-expert in 3 minuten. U hoeft geen pijnlijke formules en VBA-codes meer te onthouden.
  • 30 dagen onbeperkte gratis proefperiode. 60 dagen geld-terug-garantie. Gratis upgrade en ondersteuning gedurende 2 jaar.
Lint van Excel (met Kutools voor Excel geïnstalleerd)

Office-tabblad - Schakel lezen en bewerken met tabbladen in Microsoft Office in (inclusief Excel)

  • Een seconde om te schakelen tussen tientallen geopende documenten!
  • Verminder elke dag honderden muisklikken voor u, zeg maar dag tegen muishand.
  • Verhoogt uw productiviteit met 50% bij het bekijken en bewerken van meerdere documenten.
  • Brengt efficiënte tabbladen naar Office (inclusief Excel), net als Chrome, Firefox en New Internet Explorer.
Schermopname van Excel (met Office-tabblad geïnstalleerd)
Comments (4)
Nog geen beoordelingen. Beoordeel als eerste!
Deze opmerking is gemaakt door de moderator op de site
Bedankt hiervoor. Leuke formule. Hoe zou ik het veranderen zodat als de cel alleen letters bevat, de formule een 0 in de resultatencel invoert (in plaats van gewoon leeg zoals het op dit moment is)? Ik dacht dat ik het misschien zou kunnen doen door de formule in nog een IF-statement maar ik kom niet ver.
Deze opmerking is gemaakt door de moderator op de site
Hallo Glenn, Om de resultaten als blanco's in plaats van nullen weer te geven, past u de volgende formule toe:=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")

Probeer het alsjeblieft, ik hoop dat het je kan helpen!
Deze opmerking is gemaakt door de moderator op de site
Wow, dat zal even wennen zijn 😋 Bedankt dat je de tijd hebt genomen om te antwoorden
Deze opmerking is gemaakt door de moderator op de site
Wat is deze formule voor Franse instellingen?
Er zijn nog geen reacties geplaatst
Laat uw commentaar
Posten als gast
×
Beoordeel dit bericht:
0   Personages
Voorgestelde locaties