Scarica la cartella di lavoro di esempio
Questo tutorial dimostrerà come rimuovere i numeri dal testo in una cella in Excel e Fogli Google.
Discuteremo due diverse formule per rimuovere i numeri dal testo in Excel.
SOSTITUISCI Formula della funzione
Possiamo usare una formula basata sulla funzione SOSTITUTO. È una formula lunga ma è uno dei modi più semplici per rimuovere i numeri da una stringa alfanumerica.
In questa formula, abbiamo nidificato le funzioni SOSTITUISCI 10 volte, in questo modo:
1 | =SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(SOSTITUTO(B3,1,""),2,""),3,""),4,""),5," "),6,""),7,""),8,""),9,""),0,"") |
Matrice TEXTJOIN formula
Per rimuovere i numeri dalle stringhe alfanumeriche, possiamo anche utilizzare una formula di matrice complessa costituita dalle funzioni TEXTJOIN, MID, ROW e INDIRETTO.
1 | {=TEXTJOIN("",TRUE,IF(ISERR(MID(B3,ROW(INDDIRECT("1:"&LEN(B3))),1)+0),MID(B3,ROW(INDDIRECT("1:" &LEN(B3))),1),""))} |
Nota: TEXTJOIN è una nuova funzione Excel disponibile in Excel 2022+ e Office 365.
Questa è una formula complessa, quindi la divideremo in passaggi per capirla meglio.
Passo 1
La funzione MID viene utilizzata per estrarre la stringa alfanumerica basata sugli argomenti start_num e num_chars.
Per l'argomento start_num nella funzione MID, utilizzeremo l'elenco di array risultante dalle funzioni ROW e INDIRECT.
1 | =RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))) |
E per l'argomento num-chars, metteremo 1. Dopo aver inserito gli argomenti nella funzione MID, restituirà un array.
1 | {=MID(B3,RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))),1)} |
Passo 2
Aggiungeremo zero a ciascun valore nell'array risultante (che otteniamo dalla funzione MID sopra). In Excel, se aggiungi numeri a caratteri non numerici, otterremo un #VALORE! Errore. Quindi, dopo aver aggiunto 0 nell'array sopra, otterremo un array di numeri e #Value! Errori.
1 | {=MID(B3,RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))),1)+0} |
Passaggio 3
Dopo aver aggiunto 0, l'array risultante viene inserito nella funzione ISERR. Come sappiamo, la funzione ISERR restituisce VERO per gli errori e FALSO per i valori non di errore.
Quindi, fornirà una matrice di VERO e FALSO, VERO per i caratteri non numerici e FALSO per i numeri.
1 | =VAL.ERR(MID(B3,RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))),1)+0) |
Passaggio 4
Ora aggiungeremo la funzione SE.
La funzione SE controllerà il risultato della funzione ISERR (Passo 3). Se il suo valore è TRUE, restituirà un array di tutti i caratteri di una stringa alfanumerica. Per questo, abbiamo aggiunto un'altra funzione MID senza aggiungere zero alla fine. Se il valore della funzione SE è FALSO, restituirà uno spazio vuoto ("").
In questo modo avremo un array che contiene solo i caratteri non numerici della stringa.
1 | =SE(VAL.ERR(MID(B3,RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))),1)+0),MID(B3,RIGA(INDIRETTO("1:"&LUNGHEZZA(B3))),1 ),"") |
Passaggio 5
Infine, l'array sopra viene inserito nella funzione TEXTJOIN. La funzione TEXTJOIN unirà tutti i caratteri dell'array sopra e ignorerà la stringa vuota.
Il delimitatore per questa funzione è impostato su una stringa vuota ("") e il valore dell'argomento ignore_empty è inserito TRUE.
Questo ci darà il risultato desiderato cioè solo i caratteri non numerici della stringa alfanumerica.
1 | {=TEXTJOIN("",TRUE,IF(ISERR(MID(B3,ROW(INDDIRECT("1:"&LEN(B3))),1)+0),MID(B3,ROW(INDDIRECT("1:" &LEN(B3))),1),""))} |
Nota: questa è una formula di matrice. Quando si immettono formule di matrice in Excel 2022 o versioni precedenti, è necessario utilizzare CTRL + MAIUSC + INVIO per inserire la formula invece del normale ACCEDERE.
Saprai di aver inserito la formula correttamente dalle parentesi graffe che appaiono. NON digitare manualmente le parentesi graffe, la formula non funzionerà.
Con Office 365 (e presumibilmente versioni di Excel successive al 2022), puoi semplicemente inserire la formula come di consueto.
Funzione TRIM
Quando i numeri vengono rimossi dalla stringa, potremmo avere spazi extra rimasti. Per rimuovere tutti gli spazi finali e iniziali e gli spazi extra tra le parole, possiamo usare la funzione TRIM prima della formula principale, in questo modo:
1 | =TRIM(C3) |
Rimuovi i numeri dal testo in Fogli Google
La formula per rimuovere i numeri dal testo funziona esattamente allo stesso modo in Fogli Google come in Excel: