Excel

Strip ikke-numeriske tegn

Strip Non Numeric Characters

Excel-formel: Fjern ikke-numeriske tegnGenerisk formel
{= TEXTJOIN ('',TRUE, IFERROR ( MID (A1, ROW ( INDIRECT ('1:100')),1)+0,''))}
Resumé

For at fjerne ikke-numeriske tegn fra en tekststreng kan du prøve denne eksperimentelle formel baseret på TEXTJOIN-funktionen, en ny funktion i Excel 2019. I det viste eksempel er formlen i C5:

 
{= TEXTJOIN ('',TRUE, IFERROR ( MID (B5, ROW ( INDIRECT ('1:100')),1)+0,''))}

Bemærk: dette er en matrixformel og skal indtastes med kontrol + skift + enter.



Forklaring

Arbejder indefra og ud, bruges MID-formlen til at udtrække teksten i B5, et tegn ad gangen.Nøglen er ROW / INDIRECT stykke:



 
 ROW ( INDIRECT ('1:100'))

der spinder et array op, der indeholder 100 numre som dette:

{1,2,3,4,5,6,7,8 .... 99,100}



Bemærk: 100 repræsenterer det maksimale antal tegn, der skal behandles. Skift, så det passer til dine data.

Denne matrix går ind i MID-funktionen som start_num argument. Til num_chars , vi bruger 1.

hvordan man beregner arbejdsdage i excel eksklusive weekender

MID-funktionen returnerer en matrix som denne:



{'1''0''0' '' 'a''p''p''l''e''s' '' '' '' '' ...}

(ekstra poster i arrayet fjernet for læsbarhed)

Til denne matrix tilføjer vi nul. Dette er et simpelt trick, der tvinger Excel til at forsøge at tvinge tekst til et tal. Numeriske tekstværdier som '1', '2', '3', '4' osv. Konverteres, mens ikke-numeriske værdier fejler og kaster en #VALUE-fejl. Vi bruger IFERROR-funktionen til at opfange disse fejl og returnere en tom streng (''), mens numeriske værdier passerer ind i arrayet. Resultatet er en matrix, der kun indeholder tal og tomme strenge:

{100 '' '' '' '' '....}

Endelig går dette array-resultat ind i TEXTJOIN-funktionen som tekst1 argument. Til afgrænsning , bruger vi en tom streng ('') og for ignorere vi leverer SAND. TEXTJOIN sammenkæder derefter alle ikke-tomme værdier i arrayet og returnerer resultatet.

hvordan man laver en kasse og whisker plot i Excel

Bemærk: TEXTJOIN returnerer tallene som tekst, for eksempel '100,' 500 'osv. Hvis du ønsker et ægte numerisk resultat, skal du tilføje nul eller indpakke hele formlen i VALUE-funktionen.

Forfatter Dave Bruns


^