Eliminazione di caratteri non alfanumerici in Excel

Quando si ottengono i dati grezzi di Excel, a volte si scopre che il testo, i numeri e i caratteri non alfanumerici sono tutti mescolati insieme ed è necessario rimuovere i caratteri non alfanumerici prima di poter lavorare con i dati.

Un modo per rimuovere i caratteri non alfanumerici sarebbe quello di esaminare il set di dati cella per cella e rimuoverli, ma questo metodo non è pratico, soprattutto quando si tratta di set di dati di grandi dimensioni.

Questa esercitazione illustra alcuni approcci che possono essere utilizzati per rimuovere facilmente i caratteri non alfanumerici indesiderati dal set di dati.

Due metodi per rimuovere i caratteri non alfanumerici in Excel

I due metodi seguenti sono alcuni degli approcci che si possono utilizzare per rimuovere i caratteri non alfanumerici in Excel:

  1. Utilizzare la funzione SUBSTITUTE di Excel.
  2. Utilizzare la funzione definita dall’utente di Excel.

METODO 1 – Utilizzare la funzione SOSTITUISCI di Excel

Se il dataset contiene un solo tipo di carattere non alfanumerico, è possibile utilizzare la funzione SOSTITUISCI per sostituirlo con una stringa vuota.

Ecco un esempio di un set di dati con un solo tipo di carattere non alfanumerico, l’asterisco (*):

Utilizzeremo la funzione SUBSTITUTE per sostituire gli asterischi (*) con stringhe vuote:

Passo 1 – Inserire la formula =SUBSTITUTE(A2, ” * “,” “) nella cella B2:

Fase 2 – Premere Invio :

Fase 3 – Utilizzare la maniglia di riempimento nella cella B2 per trascinare la formula verso il basso e copiarla nelle altre celle vuote del dataset:

Tutti gli asterischi (*) sono stati sostituiti con stringhe vuote.

Funzioni SUBSTITUTE annidate

La funzione SOSTITUISCI non può sostituire più di un carattere non alfanumerico alla volta.

Se il dataset contiene almeno due tipi di caratteri non alfanumerici, è possibile utilizzare almeno due funzioni SUBSTITUTE annidate per eliminarli.

Ad esempio, se si desidera rimuovere 2 tipi di caratteri non alfanumerici, utilizzare 2 funzioni SUBSTITUTE annidate e se si desidera rimuovere 3 tipi, utilizzare 3 funzioni SUBSTITUTE annidate.

Il seguente set di dati contiene due tipi di caratteri non alfanumerici: l’asterisco (*) e il segno di cancelletto (#):

Nei passaggi seguenti utilizzeremo 2 funzioni SUBSTITUTE annidate per rimuovere i caratteri non alfanumerici:

Fase 1 – Inserite la formula =SUBSTITUTE(SUBSTITUTE(A2, ” * “,” “), ” # “,” “) nella cella B2:

Fase 2 – Premere Invio e trascinare la maniglia di riempimento verso il basso per riempire le celle vuote con la formula:

I caratteri non alfanumerici sono stati sostituiti con stringhe vuote.

È possibile continuare ad aggiungere alla formula un numero sempre maggiore di funzioni SUBSTITUTE annidate, a seconda del numero di caratteri non alfanumerici che si desidera rimuovere. Ma più funzioni SUBSTITUTE si aggiungono, più la formula diventa pesante.

Un modo più pratico per rimuovere tutti i caratteri non alfanumerici in una sola volta è quello di utilizzare funzioni definite dall’utente.

Vedere anche: Uso di Excel VLOOKUP per restituire diversi valori in verticale

METODO 2 – Utilizzare una funzione definita dall’utente

Per rimuovere tutti i caratteri non alfanumerici dal set di dati, è necessario scrivere una macro VBA di Excel utilizzando i seguenti passaggi:

Passo 1 – Nella scheda Sviluppo, fare clic sul comando Visual Basic o premere Alt + F8:

Apparirà la finestraVisual Basic Editor (VBE).

Fase 2 – Fare clic su Inserisci>>Modulo per creare un nuovo modulo:

Verrà creato un nuovo modulo:

Fase 3 – Nel nuovo modulo, inserite il seguente codice e fate clic sul pulsante Salva:

Function RemoveNonAlphaN(str As String) As String Dim ch, bytes() As Byte: bytes = str For Each chr in bytes If Chr(ch) Like "[A-Z.a-z 0-9] " _ Then RemoveNonAlphaN = RemoveNonAlphaN & Chr(ch) Next ch End Function

Fase 4 – Fare clic sul pulsante Visualizza Microsoft Excel o premere la scorciatoia da tastiera Alt + F11 per tornare al foglio di lavoro corrente. Inserite la formula =RimuoviNonAlfaN(A2) nella cella B2 del dataset che stiamo utilizzando come esempio:

Fase 5 – Inserire e trascinare verso il basso utilizzando la maniglia di riempimento:

Tutti i caratteri non alfanumerici verranno rimossi.

Conclusione

In questa esercitazione abbiamo presentato due metodi per rimuovere i caratteri non alfanumerici dal dataset. È possibile utilizzare il metodo più adatto alle proprie esigenze.