Se all’interno di un testo vogliamo estrarre un numero specifico di caratteri partendo da una data posizione possiamo utilizzare la funzione STRINGA.ESTRAI.
La funzione STRINGA ESTRAI ci restituisce un numero specifico di carattere da una stringa di testo iniziando da una determinata posizione che noi specifichiamo.
La funzione si compone di 3 argomenti obbligatori, la sintassi è la seguente:
testo rappresenta il testo o il riferimento a una cella contenente il testo di cui si desidera estrarre i caratteri.
Inizio è la posizione del primo carattere che si desidera estrarre dal testo. Il valore di inizio per il primo carattere nel testo è uguale a 1.
Num_caratt che chiameremo numero caratteri, specifica il numero dei caratteri da estrarre.
Nella cella A2 ho inserito una targa di un’automobile, se volessimo estrarre la parte numerica, cioè quella centrale, nella cella D2 scriveremo:
=STRINGA.ESTRAI(A2;B2;C2)
Il risultato sarà “000” che corrisponde proprio alla parte numerica del contenuto della cella A2.
Per la funzione STRINGA.ESTRAI non vi è differenza se il contenuto di una cella è numerico o testo, quindi se trasciniamo la formula anche nella cella sottostante, estrarremo le 2 cifre decimali, perché come valore di inizio abbiamo messo 6 e come numero caratteri 2.
Tuttavia dovete prestare attenzione alla formattazione del testo. All’interno della cella A4 ho inserito una data, mettendo come valore d’inizio 1 e come numero caratteri 5 si sarebbe portati a dire che la funzione STRINGA.ESTRAI dia come risultato la parola “giove”.
Verifichiamolo, trascinando la formula nella cella sottostante.
Il risultato ottenuto è addirittura un numero che poco ha a che fare con il contenuto della cella A4, in realtà Excel memorizza le date come numero seriale, infatti cambiando il formato da Data estesa a Generale vediamo che il contenuto della cella A4 è 44539 che giustifica il risultato della cella D4.
Ora vediamo cosa succede, se mettiamo come valore d’inizio un numero superiore alla lunghezza del testo contenuto nella cella A5 ancora una volta trasciniamo la formula nella cella sottostante, ed il risultato sarà quello di ottenere una cella con un contenuto vuoto.
E se invece fosse l’argomento numero caratteri ad essere superiore alla lunghezza stessa del testo? Verifichiamolo subito, trasciniamo la formula sotto.
Anche in questo caso non si verificheranno errori, Excel estrarrà il contenuto della cella A6 fino all’ultimo carattere disponibile.
Ora che abbiamo capito come lavora questa funzione, nulla vieta di nidificarla con altre funzioni di testo, viste nei video precedenti, in questo modo riusciremo ad estrarre parti di testo in modo dinamico.
Vediamo come scrivere la funzione se volessimo estrarre la parola “Espresso” dalla scritta “Excel Espresso”, portiamoci nella cella D7 e scriviamo:
=STRINGA.ESTRAI(A7;TROVA(” “;A7)+1;LUNGHEZZA(A7))
Usando la funzione TROVA e la funzione LUNGHEZZA riusciamo a rendere dinamici gli argomenti inizio e num_caratt e questo ci permette di estrarre una parte di testo a prescindere dalla lunghezza e posizione in cui iniziare l’estrazione.
Nel video qui sotto trovate tutti i passaggi appena illustrati, buona visione.