image

Abbiamo imparato come link: / excel-text-formas-split-numbers-and-text-from-string-in-excel [rimuovere i valori numerici da una cella in Excel 2016 e versioni precedenti]. Le formule che abbiamo usato erano un po ‘complesse ma ora Excel 2019 e 365 sono nel gioco. Excel 2019 e 365 introducono alcune nuove funzioni che semplificano il compito di rimuovere i caratteri non numerici e recuperare solo i valori numerici in una nuova cella. Useremo formule che possono aiutarci a farlo, in modo più conveniente. Generic Formula

=TEXTJOIN(“”,TRUE,IFERROR(MID(jumbled_text,SEQUENCE(NumChars),1)+0,””))

Jumbled_text: questo è il testo di origine da cui si desidera estrarre tutti i valori numerici.

NumChars: questo è il numero totale di caratteri che desideri elaborare.

Il jumbled_text non dovrebbe contenere più caratteri di questo numero (caratteri e numerici combinati).

Vediamo un esempio per chiarire le cose.

Esempio: rimuovi caratteri non numerici ed estrai tutti i numeri

image

Quindi qui abbiamo del testo confuso. Questo testo contiene alcuni numeri e alcuni caratteri non numerici. Devo eliminare i caratteri non numerici e ottenere valori numerici solo nella colonna D.

Non mi aspetto che il numero totale di caratteri nel testo confuso sia superiore a 20. Quindi il valore di NumChars è 20 qui. Puoi aumentare questo numero se necessario.

Applica qui la formula generica sopra per eliminare i caratteri non numerici.

=TEXTJOIN(“”,TRUE,IFERROR(MID(C3,SEQUENCE(20),1)+0,””))

E quando premi il pulsante Invio. Vengono rimossi tutti i caratteri non numerici. Trascina verso il basso questa formula per rimuovere i caratteri dalla stringa da tutte le celle nella colonna C3.

image

Come funziona?

Per prima cosa vediamo come questa formula viene risolta passo dopo passo.

1→

TEXTJOIN(“”,TRUE,IFERROR(MID(C3,SEQUENCE(20),1)+0,””))

2→

TEXTJOIN(“”,TRUE,IFERROR(MID(“12asw12w123″,\{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20}*,1)+0,””))

3→

TEXTJOIN(“”,TRUE,IFERROR(\{“1″;”2″;”a”;”s”;”w”;”1″;”2″;”w”;”1″;”2″;”3″;””;””;””;””;””;””;””;””;””}*+0,””))

4→

TEXTJOIN(“”,TRUE,IFERROR(\{1;2;#VALUE!;#VALUE!;#VALUE!;1;2;#VALUE!;1;2;3;#VALUE!;#VALUE!;…​;#VALUE!}*+0,””))

5→

TEXTJOIN(“”,TRUE,\{1;2;””;””;””;1;2;””;1;2;3;””;””;””;””;””;””;””;””;””}*)

6→ “1212123”

Come puoi vedere, la formula inizia a risolvere dall’interno. All’inizio il link: / excel-365-functions-the-sequence-function-in-excel [SEQUENCE function] è risolto. Dato che abbiamo superato 20. Restituisce un array di numeri che vanno da 1 a 20.

Questo array viene servito alla funzione MID come numero iniziale. La funzione mid va a ogni indice in stringa e divide ogni carattere. Puoi vederlo nel passaggio 3.

Successivamente aggiungiamo 0 a ogni carattere. In Excel, se provi ad aggiungere un numero a caratteri non numerici, il risultato sarà `link: / tips-value-error-and-how-to-fix-it-in-excel [#VALUE!

Errore] `. Quindi otteniamo un array di numeri e #VALORE! Errori. I caratteri non numerici ora sono spariti.

La funzione successiva SE.ERRORE sostituisce tutti gli errori #VALORE con “” (vuoto). Ora ci rimangono valori numerici e spazi.

Infine, questo array viene servito alla funzione TEXTJOIN. La funzione TEXTJOIN li concatena e otteniamo una stringa che contiene solo numeri.

Migliorare la formula

La formula precedente utilizzava un numero hardcoded per l’elaborazione del numero di caratteri (ne abbiamo presi venti). Ma potresti volere che sia dinamico. In tal caso, hai indovinato, useremo la funzione LEN. Ci vorrà un numero esatto di caratteri per l’elaborazione. Quindi la formula sarà.

=TEXTJOIN(“”,TRUE,IFERROR(MID(jumbled_text,SEQUENCE(LEN(jumbled_text)*),1)+0,””))

Qui, la funzione LEN rileverà automaticamente i caratteri numerici esatti nella stringa alfanumerica. Ciò allevierà l’onere di determinare il numero massimo di caratteri.

Alternativa alla funzione SEQUENCE

Se non si desidera utilizzare la funzione SEQUENCE, è possibile utilizzare una combinazione di ROW e INDIRECT per `link: / information-formas-how-to-get-sequential-row-number-in-excel [generazione di numeri sequenziali] “.

=TEXTJOIN(“”,TRUE,IFERROR(MID(jumbled_text,ROW(INDIRECT(“1:”&`LEN`(jumbled_text)))*,1)+0,””))

INDIRETTO convertirà il testo (“1:20”) nell’intervallo effettivo e quindi la funzione RIGA elencherà tutti i numeri di riga da 1 a 20. (20 è solo per esempio. Può essere qualsiasi numero).

Quindi sì ragazzi, è così che puoi strappare i caratteri non numerici da una stringa alfanumerica in Excel. Spero di essere stato abbastanza esplicativo e questo articolo ti ha aiutato. Se hai domande su questo argomento o su qualsiasi altro argomento Excel / VBA. Fino ad allora continua a eccellere.

Articoli correlati:

link: / excel-text-formas-split-numbers-and-text-from-string-in-excel [Split Numbers and Text from String in Excel 2016 and Older]: Quando non avevamo la funzione TEXTJOIN abbiamo usato Funzioni LEFT e RIGHT con alcune altre funzioni per dividere i caratteri numerici e non numerici da una stringa. link: / excel-text-extract-text-from-a-string-in-excel-using-excels-left-and-right-function [Estrai testo da una stringa in Excel utilizzando la funzione SINISTRA e DESTRA di Excel]: * Per rimuovere il testo in Excel dalla stringa possiamo utilizzare le funzioni SINISTRA e DESTRA di Excel. Queste funzioni ci aiutano a tagliare le stringhe dinamicamente.

link: / excel-text-formas-remove-leading-and-trailing-spaces-from-text-in-excel [Rimuovi spazi iniziali e finali dal testo in Excel]: * Gli spazi iniziali e finali sono difficili da riconoscere visivamente e possono rovinare i tuoi dati. La rimozione di questi caratteri dalla stringa è un’attività fondamentale e più importante nella pulizia dei dati. Ecco come puoi farlo facilmente in Excel.

link: / excel-text-formas-remove-characters-from-right [Remove Characters From Right]: * Per rimuovere i caratteri dalla destra di una stringa in Excel, usiamo la funzione LEFT. Sì, la funzione SINISTRA. La funzione LEFT mantiene il numero di caratteri specificato da LEFT e rimuove tutto dalla sua destra.

link: / excel-text-formas-remove-indesiderated-characters-in-excel [Rimuovi caratteri indesiderati in Excel]: * Per rimuovere caratteri indesiderati da una stringa in Excel, usiamo la funzione SOSTITUISCI. La funzione SOSTITUISCI sostituisce i caratteri dati con un altro carattere e produce una nuova stringa modificata.

link: / excel-text-formas-how-to-remove-text-in-excel-starting-from-a-position [Come rimuovere il testo in Excel partendo da una posizione in Excel]: * Per rimuovere il testo da una posizione iniziale in una stringa, usiamo la funzione REPLACE di Excel. Questa funzione ci aiuta a determinare la posizione iniziale e il numero di caratteri da eliminare.

Articoli popolari:

link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-aumentare-la-produttività [50 scorciatoie Excel per aumentare la produttività] | Diventa più veloce nel tuo compito. Queste 50 scorciatoie ti faranno lavorare ancora più velocemente su Excel.

link: / formule-e-funzioni-introduzione-di-vlookup-funzione [Come usare la funzione CERCA.VERT di Excel] | Questa è una delle funzioni più utilizzate e popolari di Excel che viene utilizzata per cercare valori da diversi intervalli e fogli. link: / tips-countif-in-microsoft-excel [Come usare]

link: / formule-e-funzioni-introduzione-della-funzione-vlookup [Excel]

link: / tips-countif-in-microsoft-excel [Funzione CONTA.SE] | Contare i valori con le condizioni utilizzando questa straordinaria funzione.

Non è necessario filtrare i dati per contare valori specifici. La funzione Countif è essenziale per preparare la tua dashboard.

link: / excel-formula-and-function-excel-sumif-function [Come usare la funzione SUMIF in Excel] | Questa è un’altra funzione essenziale della dashboard. Questo ti aiuta a riassumere i valori su condizioni specifiche.