Immagine pre-carrello
Back

Rimuovere gli spazi iniziali e finali da una stringa di testo in Excel

A volte, quando lavoro con le parole chiave, dopo diversi copia-incolla da uno strumento all’altro vengono inseriti spazi all’inizio o alla fine. Gli spazi aggiunti possono rompere formule basate sul confronto di testo (ad esempio vertical.lookup – cerca.verticale) quindi ho cercato un metodo per ripulire le parole chiave da questi spazi indesiderati.

Formula Generica

La formula più semplice da usare è TRIM. La funzione TRIM rimuove gli spazi aggiuntivi dal testo, lasciando solo singoli spazi tra le parole ma nessuno spazio all’inizio e alla fine del testo.

Formula Excel Inglese
=TRIM(B3)
Formula Excel Italiano
=ANNULLA.SPAZI(B3)

Spiegazione: quando è necessario rimuovere gli spazi iniziali e finali da testo in una o più celle, è possibile utilizzare la funzione TRIM (ANNULLA.SPAZI in Italiano).
Nell’esempio la formula punta alla cella B3, correggila in modo che punti il testo da ripulire.

Una volta che hai rimosso gli spazi in più, è possibile copiare le celle con formule e incollare tramite “incolla speciale” come solo “valori” per ottenere il testo finale.

La funzione TRIM è completamente automatica. Rimuove sia gli spazi iniziali e finali dal testo, e anche “normalizza” più spazi tra le parole a un solo carattere di spazio. Tutto quello che devi fare è fornire un riferimento a una cella.

TRIM con CLEAN

La funzione TRIM (ANNULLA.SPAZI in Italiano) rimuove tutti gli spazi dal testo ad eccezione dei singoli spazi tra le parole. La funzione ANNULLA.SPAZI è stata progettata per troncare gli spazi ASCII a 7 bit (valore 32) dal testo. Nel set di caratteri Unicode è presente un ulteriore spazio denominato spazio unificatore con un valore decimale pari a 160. Questo carattere viene generalmente usato nelle pagine Web come entità HTML  . Se usata da sola, la funzione ANNULLA.SPAZI non rimuove tale spazio.

In caso dovessi rimuovere anche le interruzioni di linea dalle celle, è possibile aggiungere la funzione CLEAN (LIBERA). La funzione CLEAN rimuove i caratteri non stampabili, come ad esempio le interruzioni di linea  ..

Formula Excel Inglese
=TRIM(CLEAN(text))
Formula Excel Italiano
=ANNULLA.SPAZI(LIBERA(B3))

Funzione avanzata

Si noti che la funzione CLEAN non è in grado di rimuovere tutti i caratteri non stampabili, in particolare uno spazio non-breaking, che può apparire in Excel come CHAR (160). Aggiungendo la funzione SUBSTITUTE è possibile rimuovere codici caratteri specifici. Ad esempio, per rimuovere uno spazio non-breaking, è possibile utilizzare:

Excel Inglese
=TRIM(CLEAN(SUBSTITUTE(B3,CHAR(160)," ")))
Excel Italiano
=ANNULLA.SPAZI(LIBERA(SOSTITUISCI(B3,CODICE.CARATT(160)," ")))
Ti ricordo che B3 è la cella che contiene il testo da ripulire.Per visualizzare il codice carattere di una stringa usa CODE (CODICE):
Formula Excel Inglese
=CODE(A1)
Formula Excel Italiano
=CODICE(A1)
La formula visualizza il codice carattere del primo elemento della stringa, gli spazi non-breaking hanno codice 160, lo spazio normale ha codice 32.