Come rimuovere i caratteri non inglesi da una colonna in Excel?
Gestire i dati in Excel richiede spesso di ripulire il testo, soprattutto quando si lavora con elenchi che potrebbero contenere caratteri indesiderati o inconsistenti. Ad esempio, potresti avere una colonna di nomi o voci in cui alcune celle includono caratteri non inglesi—come lettere accentate, simboli speciali o scritture straniere—che devi eliminare per garantire coerenza dei dati o per un’elaborazione successiva.
Rimuovere manualmente tali caratteri può rivelarsi estremamente dispendioso in termini di tempo e soggetto a errori, soprattutto con set di dati di grandi dimensioni. Per affrontare questa sfida in modo efficiente, Excel offre diverse soluzioni: puoi utilizzare script VBA per eliminare automaticamente le righe contenenti caratteri non inglesi oppure pulire direttamente i dati rimuovendo i soli caratteri non inglesi dal testo, preservando così la struttura originale dei dati. Di seguito ti presentiamo due approcci pratici per gestire questi scenari.
Rimuovi le righe contenenti caratteri non inglesi tramite VBA
Rimuovi i caratteri non inglesi dalle stringhe utilizzando Kutools per Excel
Rimuovi i caratteri non inglesi con una formula di Excel
Rimuovi i caratteri non inglesi dal testo delle celle utilizzando VBA
Rimuovi le righe contenenti caratteri non inglesi tramite VBA
Se devi rimuovere completamente le righe intere che contengono caratteri non inglesi da una colonna specifica in Excel, uno script VBA può automatizzare questa operazione. Questo approccio è particolarmente indicato quando vuoi garantire che rimangano solo celle con caratteri alfabetici inglesi standard: qualsiasi cella contenente caratteri stranieri o simboli speciali comporterà l’eliminazione dell’intera riga. È una soluzione ideale per preparare set di dati puliti da importare in sistemi che accettano esclusivamente caratteri inglesi standard.
Tuttavia, tieni presente che questo metodo agisce su una sola colonna per volta: devi eseguire lo script separatamente per ogni colonna a cui desideri applicarlo. Inoltre, una volta eseguito, le righe eliminate non possono essere recuperate, a meno che tu non abbia un backup o non utilizzi la funzione Annulla.
Ecco una guida passo passo:
1. Apri la tua cartella di lavoro Excel, attiva il foglio di lavoro contenente la colonna da elaborare e premi Alt + F11 per aprire la finestra di Microsoft Visual Basic for Applications. In questo modo accedi all’ambiente di programmazione VBA integrato in Excel.
2. Nell’editor VBA, fai clic su Inserisci > Modulo per creare un nuovo modulo, quindi copia e incolla il seguente codice VBA nella finestra del codice visualizzata:
VBA: Rimuovi i caratteri non inglesi
Sub RemoveNonEnglish()
'UpdatebyExtendoffice20171204
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim xRows As Long
Dim xAsc As Long
On Error Resume Next
Set xRg = Application.InputBox("Select single column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
xRows = xRg.Rows.Count
Set xRg = xRg(1)
For I = 1 To xRows
Set xCell = xRg.Offset(I - 1)
If xCell.Value <> "" Then
For J = 1 To Len(xCell.Value)
xAsc = Asc(UCase(Mid(xCell.Value, J, 1)))
If xAsc < 65 Or xAsc > 90 Then
xCell.EntireRow.Delete
I = I - 1
Exit For
End If
Next
End If
Next
Application.ScreenUpdating = True
MsgBox "Completed...", vbInformation
End Sub 
3. Premi F5 oppure fai clic sul pulsante Esegui per eseguire il codice. Apparirà una finestra di dialogo con la richiesta «Seleziona una singola colonna». Seleziona con il mouse la colonna da elaborare nel foglio di lavoro, quindi fai clic su OK.
4. Conferma la selezione facendo clic su OK nelle finestre di dialogo successive. Lo script esaminerà ogni cella della colonna selezionata e, se rileva un carattere che non è una lettera inglese maiuscola o minuscola (A-Z), eliminerà l’intera riga contenente quella cella. Al termine, apparirà un messaggio di conferma del completamento dell’operazione.
![]() | ![]() | ![]() |
Nota: Questo script VBA funziona solo su una singola colonna per volta. Ti consigliamo di salvare la cartella di lavoro prima di eseguire il codice, poiché le righe eliminate non possono essere ripristinate dopo l’operazione. Se i tuoi dati sono voluminosi o includono formattazioni particolari, crea assolutamente un backup preventivo!
Suggerimenti per la risoluzione dei problemi: Se compare un messaggio di errore o non accade nulla, assicurati di aver selezionato una colonna valida e una sola colonna (non un intervallo che comprenda più colonne). Per eseguire lo script, VBA deve essere abilitato. Se l’editor VBA è bloccato o limitato nel tuo ambiente, valuta di abilitare le autorizzazioni necessarie o di ricorrere a un metodo alternativo.
Applicabilità: Questo approccio è ideale se desideri garantire che i dati contengano esclusivamente voci composte da lettere inglesi e non hai necessità di conservare righe con caratteri speciali o appartenenti ad altre lingue. Tuttavia, se il tuo obiettivo è mantenere i dati rimuovendo soltanto i caratteri non inglesi—senza eliminare intere righe—valuta l’uso della soluzione Kutools o degli altri metodi descritti di seguito.
Rimuovi i caratteri non inglesi dalle stringhe utilizzando Kutools per Excel
Se desideri pulire il testo rimuovendo i caratteri non inglesi all’interno delle celle—senza eliminare alcuna riga—la funzione Elimina Caratteri Specifici di Kutools per Excel offre una soluzione rapida e pratica. È perfetta per quegli scenari in cui vuoi mantenere la struttura complessiva dei dati, ma eliminare simboli, lettere accentate o caratteri appartenenti ad altre lingue, lasciando visibili solo le lettere inglesi standard.
Ad esempio, questo approccio è ideale per standardizzare nomi, codici prodotto o qualsiasi voce alfanumerica inserita erroneamente o copiata da fonti esterne, che ha portato all’inserimento di simboli o caratteri non inglesi. Rispetto alla pulizia manuale, riduce il rischio di tralasciare caratteri indesiderati e accelera il processo.
![]() | ![]() | ![]() |
1. Seleziona l’intervallo contenente le stringhe di testo da pulire, quindi vai alla scheda Kutools nella barra multifunzione di Excel, fai clic su Testo e scegli Elimina Caratteri Specifici dal menu a discesa. Fai riferimento allo screenshot seguente:
2. Nella finestra di dialogo Elimina Caratteri Specifici visualizzata, seleziona l’opzione Non-alfa (che rileva tutti i caratteri non alfabetici, inclusi numeri, punteggiatura e simboli speciali o non inglesi). Il riquadro Anteprima si aggiorna automaticamente per mostrare come apparirà il testo dopo la rimozione dei caratteri non alfabetici e dei simboli speciali.
3. Dopo aver verificato che l’anteprima corrisponda alle tue aspettative, fai clic su OK. Tutti i caratteri non inglesi (ovvero qualsiasi carattere che non sia una lettera dell’alfabeto inglese standard) vengono immediatamente rimossi dall’intervallo selezionato, mentre il resto dei dati rimane invariato.
Kutools per Excel– Potenzia Excel con oltre 300 strumenti essenziali, rendendo il tuo lavoro più veloce e semplice, e sfrutta le funzionalità basate sull’IA per un’elaborazione dati più intelligente e una maggiore produttività.Scaricalo ora
Se devi spesso pulire il testo in Excel, l’approccio di Kutools ti offre un’interfaccia visiva intuitiva ed elabora rapidamente ampi intervalli con pochi clic. Include anche la funzione Annulla, permettendoti di ripristinare facilmente le modifiche qualora i risultati non soddisfino le tue esigenze.
Suggerimenti e precauzioni:L’opzione «Non-alfa» rimuove anche eventuali numeri o segni di punteggiatura presenti nel testo. Se devi conservare numeri o altri caratteri specifici, prova diverse combinazioni di caselle di controllo nella finestra di dialogo finché non ottieni il risultato desiderato. Controlla sempre il riquadro di anteprima per confermare l’effetto prima di fare clic su OK.
Confronto: Questo metodo è più flessibile dell’eliminazione delle righe tramite VBA, poiché rimuove soltanto i caratteri indesiderati senza cancellare l’intera riga, risultando così meno distruttivo e più sicuro nel caso in cui vi sia il rischio di perdere informazioni importanti associate a ciascuna riga.
Rimuovi i caratteri non inglesi con una formula di Excel
Se non disponi di Kutools o preferisci non utilizzare VBA, puoi anche usare una formula di Excel per rimuovere i caratteri non inglesi (ovvero qualsiasi carattere che non sia una lettera dell’alfabeto inglese) dal testo di una cella. Questo approccio è adatto a situazioni in cui si desidera una soluzione non distruttiva basata su formule, facilmente applicabile a ogni riga e replicabile in altre celle.
1. Inserisci la seguente formula matriciale nella prima cella della colonna di output (ad esempio, B1 se i dati originali si trovano nella colonna A):
=TEXTJOIN("",TRUE,IF((CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>=65)*(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<=90)+(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>=97)*(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<=122),MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"")) Questa formula esamina ogni carattere nella cella A1, lo conserva solo se è una lettera maiuscola (A-Z) o minuscola (a-z) dell’alfabeto inglese e unisce il risultato in una stringa pulita.
2. Dopo aver digitato la formula, premi Ctrl+Maiusc+Invio (per le versioni di Excel precedenti a Office 365; in Office 365 e versioni successive, puoi semplicemente premere Invio). Copia la formula nelle righe pertinenti trascinando il quadratino di riempimento o facendo doppio clic sull’angolo in basso a destra della cella.
Spiegazione dei parametri: Questa formula utilizza le funzioni STRINGA.ESTRAI, CODICE (che restituisce il valore ASCII), INDIRETTO e RIGA per elaborare ogni carattere nella cella di destinazione, mantenendo esclusivamente le lettere da a a z e da A a Z.
Precauzioni: Questo approccio non modifica i dati originali; gli output sono risultati di formule nella colonna di destinazione. Se occorrono valori fissi e statici, copiare i risultati e utilizzare Incolla valori per sovrascrivere le formule.
Limitazioni: La lunghezza del testo influisce sulle prestazioni delle formule. Questo metodo potrebbe non gestire correttamente i glifi Unicode composti da più caratteri; pertanto, alcuni caratteri visivamente non inglesi potrebbero rimanere se rappresentati mediante sequenze Unicode composite.
Rimuovi i caratteri non inglesi dal testo delle celle utilizzando VBA
Se desideri rimuovere i caratteri non inglesi all'interno del testo delle celle (senza eliminare intere righe), puoi utilizzare anche VBA per un’automazione più personalizzabile. È la soluzione ideale per attività ricorrenti di pulizia dati, quando non puoi contare sui componenti aggiuntivi.
1. Apri Excel, quindi premi Alt + F11 per avviare l'editor di Microsoft Visual Basic for Applications. Vai su Inserisci > Modulo e incolla il codice seguente nella finestra del modulo:
Sub RemoveNonEnglishCharactersFromCells()
' Remove non-English characters, keep only a-z, A-Z
Dim rng As Range
Dim cell As Range
Dim i As Long
Dim ch As String
Dim output As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range to clean (cells will be altered):", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For Each cell In rng
output = ""
For i = 1 To Len(cell.Value)
ch = Mid(cell.Value, i, 1)
If (Asc(ch) >= 65 And Asc(ch) <= 90) Or (Asc(ch) >= 97 And Asc(ch) <= 122) Then
output = output & ch
End If
Next i
cell.Value = output
Next cell
Application.ScreenUpdating = True
MsgBox "Cleanup complete.", vbInformation
End Sub 2. Torna a Excel, seleziona l'intervallo da pulire, rientra nell'editor VBA ed esegui il codice premendo F5 oppure facendo clic sul pulsante Esegui. Quando richiesto, seleziona l'intervallo da elaborare e conferma.
Effetti: Questo codice elabora ogni cella selezionata, rimuove tutti i caratteri che non sono lettere dell'alfabeto inglese e aggiorna la cella con il risultato pulito. I dati originali verranno sovrascritti, quindi ti consigliamo di creare un backup del foglio o di lavorare su una copia.
Kutools per Excel– Potenzia Excel con oltre 300 strumenti essenziali, rendendo il tuo lavoro più veloce e semplice, e sfrutta le funzionalità basate sull’IA per un’elaborazione dati più intelligente e una maggiore produttività.Scaricalo ora
Demo: Rimuovi i caratteri non inglesi dalle stringhe utilizzando Kutools per Excel
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi



