Excel: come estrarre numeri da una stringa
Puoi utilizzare la seguente formula per estrarre numeri da una stringa in Excel:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
Questa particolare formula estrarrà tutti i numeri dalla stringa nella cella A2 .
Ad esempio, se la cella A2 contiene l’espressione “25 biciclette”, questa formula restituirà semplicemente 25.
L’esempio seguente mostra come utilizzare questa formula nella pratica.
Esempio: estrarre numeri da una stringa in Excel
Supponiamo di avere il seguente elenco di stringhe in Excel:
Supponiamo di voler estrarre solo i numeri da ciascuna stringa.
Per fare ciò, possiamo digitare la seguente formula nella cella B2 :
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
Possiamo quindi fare clic e trascinare la formula su ciascuna cella rimanente nella colonna B:
La colonna B ora contiene solo i numeri di ciascuna delle stringhe corrispondenti nella colonna A.
Come funziona questa formula?
Ricorda la formula che abbiamo usato per estrarre i numeri dalle stringhe:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
Ecco come funziona questa formula:
Innanzitutto, ROW(INDIRECT(“1:”&LEN( A2 ))) restituisce una serie di numeri da 1 alla lunghezza della stringa.
Quindi, (MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1) converte tutti i caratteri nel testo in #VALORE! Errori.
Quindi IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””) rimuove tutti i $VALUE! Errori.
Infine, TEXTJOIN(“”,TRUE,IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””)) raccoglie tutti i numeri rimanenti e ignora gli spazi vuoti.
Il risultato finale è che possiamo estrarre solo i numeri da ciascuna stringa.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in Excel:
Excel: come estrarre il testo tra due caratteri
Excel: come estrarre il testo dopo un carattere
Excel: come estrarre il testo prima di un carattere