Excel: come estrarre testo con due utili funzioni

Guida all'uso delle funzioni Excel per estrarre testo compreso tra delimitatori: come fare in pratica.

Avete un documento Excel che contiene una serie di stringhe di testo con alcuni caratteri utilizzati come delimitatori. Per elaborare delle stringhe di caratteri con le precedenti versioni di Excel era necessario ricorrere a complicate funzioni basate sull’utilizzo di SINISTRA, DESTRA, LUNGHEZZA e TROVA.

Le release più recenti di Excel mettono a disposizione funzioni molto più potenti per estrarre testo dalle celle, ad esempio TESTO.PRECEDENTE e TESTO.SUCCESSIVO.

L’aspetto interessante è che per utilizzarle non è necessario acquistare necessariamente Microsoft 365 ma è possibile usare Office gratis nella versione online.

Come estrarre testo con Excel

Si supponga di avere in una colonna di Excel una serie di dati che contengono varie parole, separati con simboli come punti, trattini o trattino basso (underscore).

Nell’immagine si ha una lista di stringhe di caratteri che potrebbero ad esempio corrispondere a nomi di file. Come si può fare per separare velocemente la prima parte del testo dalla data (giorno e mese) nella seconda parte?

Il trucco per estrarre il testo che compone la prima parte della stringa, consiste nel portarsi nella colonna a destra quindi digitare la formula seguente:

=TESTO.PRECEDENTE(A1;"_";-1)

Trascinando la formula in verticale (colonna B) agendo sul quadretto in basso a destra, essa sarà applicata alle celle successive.

Nella formula abbiamo indicato il delimitatore per poi specificare, come terzo parametro -1. Cosa significa?

Il parametro -1 (valore negativo) consente di attivare la ricerca del delimitatore specificato da destra verso sinistra all’interno della stringa di caratteri. Indicando -1 viene cercata la prima occorrenza da destra verso sinistra del carattere “_” e raccolto tutto il testo che precede tale simbolo.

La formula seguente evita la comparsa del messaggio #N/D nella cella nel caso in cui non ci fosse il carattere delimitatore:

=TESTO.PRECEDENTE(A1;"_";-1;;1)

Il valore 1 finale nella formula permette di ottenere una cella vuota nel caso in cui il delimitatore non venisse trovato.

Allo stesso modo, usando la funzione TESTO.SUCCESSIVO si può estrarre facilmente il testo che segue un carattere delimitatore. L’approccio è esattamente lo stesso già visto in precedenza.
La formula seguente permette di estrarre, nell’esempio in figura, il nome del mese dalle righe della colonna A del foglio elettronico:

=TESTO.SUCCESSIVO(A1;"_";-1)

Utilizzando la formula seguente si evita la comparsa della stringa #N/D nel caso in cui Excel si trovasse a gestire una cella che non contiene il delimitatore:

=TESTO.SUCCESSIVO(A1;"_";-1;;1)

Vale la pena evidenziare che per quelle celle che non contengono delimitatori, è possibile unire, separare o combinare più valori usando la sorprendente funzione Flash Fill di Excel che possono sfruttare gratis anche gli utenti di Office Online.

Supponendo di avere nomi e cognomi nelle colonne A e B di Excel, si possono indicare gli stessi dati, ad esempio, nella forma “Cognome Nome” oppure “cognome.nome@nomeazienda.abc” nella colonna C.

Digitando manualmente un paio di righe quindi premendo la combinazione di tasti CTRL+E sull’ultima cella, si attiva la “magia” di Excel Flash Fill.

Ti consigliamo anche

Link copiato negli appunti