
La funzione TESTO.SUCCESSIVO() di Excel
In questa lezione ti spiego come dividere in due un testo su Excel tramite la funzione
=TESTO.SUCCESSIVO(testo;delimitatore)
La funzione ha diversi parametri ma i principali sono i primi due
- Il testo è la stringa che vuoi dividere oppure l'indirizzo di una cella che contiene un testo.
- Il delimitatore è uno o più caratteri che delimitano la stringa in due parti distinte.
La funzione trova il carattere delimitatore nel testo e restituisce la stringa restante, quella dopo il delimitatore, eliminando la parte iniziale.
Nota. La funzione TESTO.SUCCESSIVO() ha molti altri parametri oltre quelli che ti ho detto ma preferisco spiegarli facendo degli esempi pratici anziché descriverli.
Ti faccio un esempio pratico.
Digita il testo "AB-CD-EF-GH" nella cella B2.
Inserisci la funzione =TESTO.SUCCESSIVO(B2;"-") nella cella B4.
La funzione cerca e trova il carattere delimitatore "-" nel terzo carattere della stringa "AB-CD-EF-GH" restituendo la stringa che segue il carattere delimitatore.
Il risultato è la sottostringa "CD-EF-GH" nella cella B4.
Nota. La funzione cerca di default la prima occorrenza del delimitatore. Quindi, se nel testo ci sono due o più caratteri delimitatori, Excel considera solo il primo. Se vuoi considerare un'altra occorrenza, devi indicarlo nel terzo parametro della funzione. Ad esempio, per usare la seconda occorrenza digita =TESTO.SUCCESSIVO(B2;"-";2) nella cella B4.
In questo caso la funzione cerca la seconda occorrenza del carattere delimitatore "-" che trova al quinto carattere della stringa "AB-CD-EF-GH". Una volta trovata, la funzione restituisce il testo a destra del delimitatore. Pertanto, il risultato finale nella cella B4 è la sottostringa "EF-GH".
Se nel terzo parametro scrivi un numero negativo, la funzione cerca le occorrenze del carattere delimitatore da destra verso sinistra. Quindi, dall'ultimo carattere della stringa al primo. Ad esempio, digita =TESTO.SUCCESSIVO(B2;"-";-1) nella cella B4.
La funzione cerca la prima occorrenza del carattere delimitatore "-" a partire dall'ultimo carattere della stringa. La prima occorrenza che trova è nel nono carattere della stringa "AB-CD-EF-GH". A questo punto la funzione restituisce la sottostringa a destra del delimitatore. In questo caso il risultato nella cella B4 è la sottostringa "GH".
Ti faccio un altro esempio.
Inserisci la funzione =TESTO.SUCCESSIVO(B2;"CD") nella cella B4
La funzione cerca il delimitatore "CD" nella stringa e lo trova nel terzo carattere della stringa "AB-CD-EF-GH" restituendo il testo restante a destra del delimitatore.
Quindi, il risultato nella cella B4 è la sottostringa "EF-GH".
Ora, inserisci la funzione =TESTO.SUCCESSIVO(B2;"cd") usando delle lettere minuscole.
La funzione =TESTO.SUCCESSIVO() è case sensitive. Quindi, distingue tra le lettere maiuscole e minuscole.
Cerca la sequenza "cd" (in minuscolo) nella stringa "AB-CD-EF-GH" ma non la trova.
Quando la funzione non trova il delimitatore, restituisce un messaggio di errore #N/D
Nota. Se vuoi puoi disattivare la funzionalità case sensitive, inserendo 1 come quarto parametro della funzione. In questo modo la funzione smette di distinguere tra le lettere maiuscole e minuscole presenti nella stringa. Ad esempio digita =TESTO.SUCCESSIVO(B2;"cd";1;1) nella cella B2.
In questo caso la funzione non distingue più tra le lettere minuscole "cd" e maiuscole "CD". Quindi, trova la prima occorrenza del delimitatore "cd" nel terzo carattere della stringa "AB-CD-EF-GH" e restituisce nella cella B4 la stringa "-EF-GH" che si trova a destra del delimitatore.
Ti faccio un ultimo esempio per spiegarti tutte le potenzialità della funzione.
Inserisci la funzione =TESTO.SUCCESSIVO(B2;"xyz") nella cella B4.
La funzione cerca ma non trova il delimitatore "xyz" nella stringa "AB-CD-EF-GH".
Quindi visualizza il messaggio di errore #N/D nella cella B4.
Come evitare di vedere il messaggio di errore?
Una prima soluzione è inserire 1 nel quinto parametro della funzione per dire a Excel di aggiungere automaticamente un delimitatore alla fine della stringa.
In questo modo, quando non trova il delimitatore la funzione restituisce una stringa vuota anziché un messaggio di errore.
Ad esempio, digita =TESTO.SUCCESSIVO(B2;"xyz";1;0;1) nella cella B4.
Excel aggiunge automaticamente il delimitatore "xyz" alla fine del testo "AB-CD-EF-GHxyz"
La funzione cerca e trova il delimitatore alla fine del testo.
Non essendoci altro testo a destra, la funzione restituisce la stringa vuota "" nella cella B4.
In alternativa, puoi anche personalizzare il messaggio da visualizzare quando la ricerca fallisce.
Puoi farlo inserendo una stringa nel sesto parametro della funzione.
Ad esempio, digita =TESTO.SUCCESSIVO(B2;"xyz";1;0;0;"non esiste") nella cella B4
La funzione cerca e non trova il delimitatore "xyz" nella stringa "AB-CD-EF-GH".
In questo caso, la funzione visualizza il messaggio personalizzato "non esiste" nella cella B4.
Ora conosci tutte le potenzialità della funzione TESTO.SUCCESSIVO() del foglio Excel.