Scarica la cartella di lavoro di esempio
Questo tutorial sarà dimostrarti come rimuovere caratteri non numerici dalle celle in Excel e nel foglio Google.
Rimuovi caratteri non numerici
Nota: Le funzioni menzionate in questo articolo sono state introdotte in Excel 2016. Se disponi di una versione precedente di Excel, consulta questo articolo: Trova ed estrai numero da stringa.
Con le funzioni TEXTJOIN, SEQUENCE, MID e IFERROR puoi rimuovere tutti i caratteri non numerici:
1 | =TEXTJOIN("",TRUE,IFERROR(MID(B3,SEQUENCE(LEN(B3)),1)+0,"")) |
Vediamo come funziona questa formula.
Le funzioni SEQUENCE e LEN restituiscono un array di numeri a partire da 1 fino alla lunghezza della nostra stringa alfanumerica. Nel nostro caso sarà {1,2,3,4,5,6,7,8,9,10,11,12,13}.
1 | =TEXTJOIN("",TRUE,IFERROR(MID(B3,{1;2;3;4;5;6;7;8;9;10;11;12;13},1)+0,"") ) |
La funzione MID restituisce i caratteri corrispondenti alle posizioni dal nostro array numerico sopra:
1 | =TEXTJOIN("",TRUE,IFERROR({"1";"3";"M";"o";"n";"d";"a";"y";"0";"1" ;"D";"a";"y"}+0,"")) |
L'aggiunta di 0 a ciascun elemento nell'array causerà un errore se il valore è testo. Quindi la funzione IFERROR sostituirà l'errore con una stringa vuota, lasciando solo i valori numerici:
1 | =TEXTJOIN("",VERO,{1;3;"";"";"";"";"";"";0;1;"";"";""}) |
Infine, la funzione TEXTJOIN restituisce solo i caratteri numerici.
Invece di utilizzare la funzione SEQUENCE, puoi raggiungere lo stesso obiettivo combinando la funzione TEXTJOIN con le funzioni LEN, INDIRECT, ROW, MID e IFERROR.
1 | =TEXTJOIN("",TRUE,IFERROR((MID(B3,ROW(INDDIRECT("1:"&LEN(B3))),1)*1),"")) |
Come rimuovere i caratteri non numerici in Fogli Google
Tutti gli esempi spiegati sopra funzionano allo stesso modo nei fogli di Google come in Excel.