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

Ta bort eller ta bort icke-numeriska tecken från textsträngar

Ibland kan du behöva ta bort alla icke-numeriska tecken från textsträngarna och bara hålla siffrorna enligt nedanstående skärmdump. Denna artikel kommer att presentera några formler för att lösa denna uppgift i Excel.


Ta bort eller ta bort alla icke-numeriska tecken från textsträngar med formler

I Excel 2019 och Office 365 kan en ny TEXTJOIN-funktion i kombination med funktionerna FEL, MELLAN, RAD och INDIREKT hjälpa dig att extrahera endast siffror från en textsträng, den generiska syntaxen är:

=TEXTJOIN("",TRUE,IFERROR(MID(text,ROW(INDIRECT("1:100")),1)+0,""))
  • text: textsträngen eller cellvärdet som du vill ta bort alla icke-numeriska tecken från.

1. Vänligen kopiera eller skriv in formeln nedan i en tom cell där du vill skicka resultatet:

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

2. Och tryck sedan på Ctrl + Skift + Enter knappar tillsammans för att få det första resultatet, se skärmdump:

3. Välj sedan formelcellen och dra sedan fyllningshandtaget ner till cellerna som du vill använda denna formel, endast siffror har extraherats och alla andra icke-numeriska tecken har avlägsnats, se skärmdump:


Förklaring av formeln:

RAD (INDIREKT ("1: 100"): Nummer 1: 100 i formen INDIRECT betyder att MID-funktionen utvärderar 100 tecken i textsträngen. Denna matris kommer att innehålla 100 nummer så här: {1; 2; 3; 4; 5; 6; 7; 8 .... 98; 99; 100}.
Anmärkningar: Om din textsträng är mycket längre kan du ändra siffran 100 till större nummer efter behov.

MIDD (A2, RAD (INDIREKT ("1: 100")), 1: Denna MID-funktion används för att extrahera text i cell A2 för att få ett tecken, och det kommer en matris så här:
{"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: Att lägga till 0-värde efter att denna matris används för att tvinga texten till ett tal, det numeriska textvärdet omvandlas till nummer och icke-numeriska värden visas som #VALUE felvärde så här:
{"5"; "0"; "0"; # VALUE!; # VALUE!; # VALUE!; # VALUE!; # VALUE!; # VALUE! !;#VÄRDE! !;#VÄRDE!...}

IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0: Denna IFERROR-funktion används för att ersätta alla felvärden med en tom sträng så här:
{"5"; "0"; "0"; ""; ""; ""; ""; ""; ""; ""; ""; ...}

TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,"")): Äntligen kombinerar denna TEXTJION-funktion alla värden som inte är tomma i matrisen som returneras av funktionen IFFERROR och returnerar resultatet.


Anmärkningar:

1. Med ovanstående formel kommer siffrorna att returneras som textformat, om du behöver ett riktigt numeriskt värde, använd denna formel, kom ihåg att trycka på Ctrl + Skift + Enter för att få rätt resultat.

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

2. I tidiga versioner av Excel fungerar inte denna formel, i det här fallet kan följande formel hjälpa dig, vänligen kopiera eller skriv in denna formel i en tom cell:

=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)


Ta bort eller ta bort alla icke-numeriska tecken från textsträngar med en enkel funktion

Kanske är det för långt att komma ihåg ovanstående formler, här kommer jag att presentera Kutools för Excel för dig, med dess Ta bort tecken funktionen kan du ta bort numeriska, alfabetiska, icke-utskrivbara eller alfanumeriska tecken från textsträngar med bara flera klick. Klicka för att ladda ner Kutools för Excel för en gratis provperiod!


Relativa funktioner som används:

  • TEXTJOIN:
  • TEXTJOIN-funktionen sammanfogar flera värden från en rad, kolumn eller ett cellområde med specifik avgränsare.
  • MID:
  • MID-funktionen används för att hitta och returnera ett visst antal tecken från mitten av den angivna textsträngen.
  • ROW:
  • Excel ROW-funktionen returnerar radnumret för en referens.
  • INDIRECT:
  • Excel INDIRECT-funktionen konverterar en textsträng till en giltig referens.
  • IFERROR:
  • IFERROR-funktionen används för att returnera ett anpassat resultat när en formel utvärderar ett fel och returnera ett normalt resultat när inget fel inträffar.

Fler artiklar:

  • Ta bort radbrytningar från celler i Excel
  • Denna handledning innehåller tre formler som hjälper dig att ta bort radbrytningar (som inträffar genom att trycka på Alt + Enter-tangenterna i en cell) från specifika celler i Excel.

De bästa Office-produktivitetsverktygen

Kutools för Excel - Hjälper dig att sticka ut från mängden

Vill du slutföra ditt dagliga arbete snabbt och perfekt? Kutools för Excel ger 300 kraftfulla avancerade funktioner (kombinera arbetsböcker, summera efter färg, dela cellinnehåll, konvertera datum och så vidare ...) och spara 80% tid åt dig.

  • Designad för 1500 arbetsscenarier, hjälper dig att lösa 80% Excel-problem.
  • Minska tusentals tangentbord och musklick varje dag, lindra dina trötta ögon och händer.
  • Bli en expert på 3 minuter. Behöver inte längre komma ihåg några smärtsamma formler och VBA-koder.
  • 30 dagars obegränsad gratis provperiod. 60-dagars pengarna tillbaka-garanti. Gratis uppgradering och support i 2 år.
Ribbon of Excel (med Kutools för Excel installerat)

Fliken Office - Aktivera läsning och redigering av flikar i Microsoft Office (inkluderar Excel)

  • En sekund att växla mellan dussintals öppna dokument!
  • Minska hundratals musklick åt dig varje dag, säg adjö till mushanden.
  • Ökar din produktivitet med 50% när du tittar på och redigerar flera dokument.
  • Ger effektiva flikar till Office (inkluderar Excel), precis som Chrome, Firefox och ny Internet Explorer.
Skärmdump av Excel (med Office-fliken installerad)
Sortera kommentarer efter
Kommentarer (4)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Tack för detta. Trevlig formel. Hur skulle jag ändra det så att om cellen bara innehåller bokstäver kommer formeln in i en 0 i resultatcellen (istället för att bara vara tom som den är för tillfället)? Tänkte att jag kanske skulle kunna göra det genom att slå in formeln i ett annat IF-uttalande men jag kommer inte särskilt långt.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Glenn, För att visa resultaten som tomma snarare än nollor, använd följande formel:=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),"")

Försök gärna, hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
Wow, det kommer att ta lite smältning 😋 Tack för att du tog dig tid att svara 👍
Denna kommentar minimerades av moderatoren på webbplatsen
Vad är den här formeln för franska inställningar?
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser