Excel: come estrarre un numero decimale da una stringa
È possibile utilizzare la seguente formula per estrarre un numero decimale da una stringa in Excel:
=MID( A2 , MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2 &"0123456789")), MAX(IFERROR(FIND({1,2, 3,4,5,6,7,8,9,0}, A2 ,ROW(INDIRECT("1:"&LEN( A2 )))),0))-MIN(SEARCH({0,1,2, 3,4,5,6,7,8,9}, A2 &"0123456789"))+1)
Questa particolare formula estrarrà il numero decimale dalla stringa nella cella A2 .
Ad esempio, supponiamo che la cella A2 contenga la seguente frase:
- Ha comprato 12,52 libbre di frutta
Quindi questa formula restituirà 12.52 .
L’esempio seguente mostra come utilizzare questa formula nella pratica.
Esempio: estrarre un numero decimale da una stringa in Excel
Supponiamo di avere il seguente elenco di stringhe in Excel:
Supponiamo di voler estrarre solo numeri decimali da ciascuna stringa.
Per fare ciò, possiamo digitare la seguente formula nella cella B2 :
=MID( A2 , MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2 &"0123456789")), MAX(IFERROR(FIND({1,2, 3,4,5,6,7,8,9,0}, A2 ,ROW(INDIRECT("1:"&LEN( A2 )))),0))-MIN(SEARCH({0,1,2, 3,4,5,6,7,8,9}, A2 &"0123456789"))+1)
Possiamo quindi fare clic e trascinare la formula su ciascuna cella rimanente nella colonna B:
La colonna B ora contiene solo i numeri decimali di ciascuna delle stringhe corrispondenti nella colonna A.
Come funziona questa formula?
Ricorda la formula che abbiamo usato per estrarre i numeri decimali dalle stringhe:
=MID( A2 , MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2 &"0123456789")), MAX(IFERROR(FIND({1,2, 3,4,5,6,7,8,9,0}, A2 ,ROW(INDIRECT("1:"&LEN( A2 )))),0))-MIN(SEARCH({0,1,2, 3,4,5,6,7,8,9}, A2 &"0123456789"))+1)
Ecco come funziona questa formula:
Innanzitutto, MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&”0123456789″)) restituisce la posizione del primo numero nella stringa.
Quindi , MAX(IFERROR(FIND({1,2,3,4,5,6,7,8,9,0},A2,ROW(INDIRECT(“1:”&LEN(A2)))),0) ) restituisce la posizione dell’ultimo numero nella stringa.
Quindi utilizziamo la funzione MID per estrarre tutti i caratteri tra queste due posizioni nella stringa.
Il risultato finale è che possiamo estrarre solo il numero decimale dalla 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