Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come rimuovere i caratteri non inglesi in una colonna di Excel?

Author Sun Last modified

La gestione dei dati in Excel richiede spesso di pulire il testo, specialmente quando si lavora con elenchi che potrebbero includere caratteri indesiderati o inconsistenti. Ad esempio, potresti avere una colonna di nomi o voci in cui alcune celle contengono caratteri non inglesi – come lettere accentate, simboli speciali o caratteri stranieri – che devi rimuovere per soddisfare i requisiti di consistenza dei dati o per ulteriori elaborazioni.

Rimuovere manualmente tali caratteri può essere molto dispendioso in termini di tempo e soggetto a errori, specialmente quando si gestiscono grandi set di dati. Per risolvere questo problema in modo efficiente, Excel offre diversi approcci: puoi utilizzare script VBA per eliminare automaticamente le righe contenenti qualsiasi carattere non inglese, oppure puoi pulire i dati sul posto rimuovendo i caratteri non inglesi dal testo mantenendo intatta la struttura dei dati. Qui introduciamo due soluzioni pratiche per aiutarti a gestire questi scenari.

Rimuovi le righe contenenti caratteri non inglesi tramite VBA

Rimuovi caratteri non inglesi dalle stringhe utilizzando Kutools per Excel

Rimuovi caratteri non inglesi utilizzando una formula di Excel

Rimuovi caratteri non inglesi dal testo delle celle utilizzando VBA


Rimuovi le righe contenenti caratteri non inglesi tramite VBA

Se hai bisogno di rimuovere completamente tutte le righe che contengono caratteri non inglesi da una particolare colonna di Excel, utilizzando uno script VBA puoi automatizzare questo processo. Questo approccio è particolarmente adatto quando vuoi assicurarti che solo le celle con caratteri alfabetici inglesi standard rimangano, e qualsiasi cella con caratteri stranieri o simboli speciali comporterà l'eliminazione dell'intera riga. Questo metodo è particolarmente utile per preparare set di dati puliti per l'importazione in sistemi che accettano solo caratteri inglesi standard.

Tuttavia, tieni presente la limitazione che questo metodo mira una sola colonna alla volta; devi eseguire lo script separatamente per ogni colonna se desideri applicarlo altrove. Inoltre, una volta eseguito, le righe eliminate non possono essere recuperate a meno che tu non abbia creato un backup o possa utilizzare la funzione Annulla.

Ecco una guida passo-passo:

1. Apri la tua cartella di lavoro di Excel, attiva il foglio di lavoro contenente la colonna che desideri elaborare e premi Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications. Questo ti permette di accedere all'ambiente di programmazione VBA integrato in Excel.

2. Nell'editor VBA, clicca su Inserisci > Modulo per creare un nuovo modulo, quindi copia e incolla il seguente codice VBA nella finestra del codice che appare:

VBA: Rimuovi 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

A screenshot of the pasted code in the created module

3. Premi F5 o clicca sul pulsante Esegui per eseguire il codice. Apparirà una finestra di dialogo che ti chiederà di "Seleziona una singola colonna". Usa il mouse per selezionare la colonna che desideri elaborare nel tuo foglio di lavoro, quindi clicca OK.
A screenshot showing selection of a column in the VBA script for removing non-English characters

4. Conferma la tua selezione cliccando OK nelle finestre di dialogo successive. Lo script controllerà quindi ogni cella della colonna selezionata. Se rileva qualsiasi carattere che non sia una lettera inglese maiuscola o minuscola (A-Z), eliminerà l'intera riga contenente quella cella. Al termine, vedrai un messaggio che ti informa che il processo è finito.
A screenshot of the confirmation dialog

A screenshot showing an Excel column with non-English characters Arrow right A screenshot showing an Excel column after non-English characters have been removed

Nota: Questo script VBA funziona solo per una selezione di una singola colonna alla volta. Si consiglia 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 grandi o contengono formattazioni speciali, è fortemente consigliabile creare un backup prima.

Consigli per la risoluzione dei problemi: Se vedi un messaggio di errore o nulla sembra accadere, verifica di aver selezionato una colonna valida e solo una colonna (non un intervallo che si estende su più colonne). VBA deve essere abilitato affinché questo script possa funzionare. Se l'editor VBA è bloccato o limitato nel tuo ambiente, considera di abilitare le autorizzazioni o utilizzare un metodo alternativo.

Applicabilità: Questo approccio è ideale se vuoi assicurarti che i tuoi dati includano solo voci con sole lettere inglesi e non hai bisogno di conservare righe contenenti caratteri speciali o in lingue straniere. Tuttavia, se il tuo scopo è quello di mantenere i dati mentre semplicemente rimuovi i caratteri non inglesi – ma non elimini intere righe – considera l'uso della soluzione Kutools o altri metodi descritti di seguito.


Rimuovi 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 Rimuovi Caratteri in Kutools per Excel offre una soluzione rapida e pratica. Questo è adatto per scenari in cui vuoi mantenere la struttura generale dei dati ma rimuovere qualsiasi carattere speciale, accentato o in lingua straniera all'interno delle stringhe, lasciando visibili solo lettere inglesi standard.

Ad esempio, questo approccio è ideale per standardizzare nomi, codici prodotto o qualsiasi voce alfanumerica che potrebbe essere stata inserita in modo errato o copiata da fonti esterne, risultando nella presenza di vari simboli o caratteri non inglesi. Rispetto alla pulizia manuale, riduce il rischio di perdere caratteri indesiderati e velocizza il processo.

A screenshot of an Excel column containing non-English characters before cleanup Arrow right A screenshot of the Excel column after using Kutools to remove non-English characters
Kutools per Excel offre oltre 300 funzionalità avanzate per semplificare compiti complessi, aumentando creatività ed efficienza. Integrato con capacità di intelligenza artificiale, Kutools automatizza le attività con precisione, rendendo la gestione dei dati senza sforzo. Informazioni dettagliate su Kutools per Excel... Prova gratuita...

1. Seleziona l'intervallo contenente le stringhe di testo che desideri pulire, quindi vai alla scheda Kutools nella barra multifunzione di Excel, clicca su Testo, e scegli Rimuovi Caratteri dal menu a discesa. Consulta lo screenshot sottostante per riferimento:
A screenshot of Kutools Remove Characters option under Text menu in Excel

2. Nella finestra di dialogo Rimuovi Caratteri che appare, seleziona l'opzione per Non-alfabetici (che mira a caratteri non alfabetici, inclusi cifre, punteggiatura e simboli speciali o non inglesi). Il riquadro Anteprima si aggiorna automaticamente per mostrarti come apparirà il testo dopo la rimozione dei caratteri non inglesi e speciali.
A screenshot of Remove Characters dialog showing options for removing non-English characters

3. Dopo aver confermato che l'anteprima soddisfa le tue aspettative, clicca OK. Tutti i caratteri non inglesi (cioè, tutto ciò che non è una lettera inglese standard) verranno immediatamente rimossi dall'intervallo selezionato, mentre il resto dei tuoi dati rimarrà intatto.
A screenshot of the Excel column after using Kutools to remove non-English characters

Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora

Se hai frequentemente bisogno di pulire il testo in Excel, l'approccio Kutools fornisce un'interfaccia utente visiva e user-friendly ed elabora efficacemente grandi intervalli di dati in pochi clic. Offre anche supporto per annullare le modifiche, quindi puoi rapidamente ripristinare le modifiche se i risultati non soddisfano le tue esigenze.

Suggerimenti e precauzioni: L'opzione 'Non-alfabetici' rimuoverà anche eventuali numeri o segni di punteggiatura speciali nel testo. Se hai bisogno di mantenere numeri o altri caratteri specifici, sperimenta con diverse caselle di controllo nel dialogo fino a ottenere il risultato desiderato. Controlla sempre il riquadro Anteprima per confermare l'effetto prima di premere OK.

Confronto: Questo metodo è più flessibile della cancellazione di righe tramite VBA in quanto rimuove solo i caratteri indesiderati, non l'intera riga, quindi è meno distruttivo e più sicuro nel caso ci sia il rischio di perdere informazioni importanti legate a ciascuna riga.


Rimuovi caratteri non inglesi utilizzando una formula di Excel

Se non hai accesso a Kutools o preferisci non utilizzare VBA, puoi anche usare una formula di Excel per rimuovere i caratteri non inglesi (cioè, tutto ciò che non è una lettera dell'alfabeto inglese) dal testo in una cella. Questo approccio è adatto per situazioni in cui desideri una soluzione non distruttiva basata su formule che può essere applicata a ogni riga e copiata facilmente in altre celle.

1. Inserisci la seguente formula matrice nella prima cella della colonna di output (ad esempio, B1 se i tuoi dati originali sono 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 controlla ogni carattere nella cella A1, lo mantiene solo se è una lettera maiuscola (A-Z) o minuscola (a-z) inglese, e unisce il risultato in una stringa pulita.

2. Dopo aver digitato questa formula, premi Ctrl+Shift+Invio (per le versioni di Excel precedenti a Office 365; in Office 365 e successivi, puoi semplicemente premere Invio). Copia la formula per tutte le righe pertinenti trascinando la maniglia di riempimento o facendo doppio clic nell'angolo in basso a destra della cella.

Spiegazione dei parametri: Questa formula utilizza MID, CODICE (che restituisce il valore ASCII), INDIRETTO e RIF.RIGA per elaborare ogni carattere nella cella target. Solo le lettere a-z o A-Z vengono conservate.

Precauzioni: Questo approccio non altera i dati originali; gli output sono i risultati della formula nella colonna di destinazione. Se hai bisogno di valori fissi e statici, copia i risultati e usa Incolla Valori per sovrascrivere le formule.

Limitazioni: La lunghezza del testo influisce sulle prestazioni della formula. Questo metodo potrebbe non gestire correttamente i grafemi Unicode multi-carattere, quindi alcuni caratteri visivamente non inglesi potrebbero rimanere se rappresentati da sequenze Unicode composite.


Rimuovi caratteri non inglesi dal testo delle celle utilizzando VBA

Se vuoi rimuovere i caratteri non inglesi all'interno del testo delle celle (senza eliminare intere righe), puoi anche utilizzare VBA per un'automazione più personalizzabile. Questo è pratico per attività di pulizia dei dati che devono essere eseguite frequentemente, e dove i componenti aggiuntivi non sono un'opzione.

1. Apri Excel, quindi premi Alt + F11 per avviare l'editor Microsoft Visual Basic for Applications. Vai su Inserisci > Modulo e incolla il seguente codice 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 che desideri pulire, torna all'editor VBA ed esegui il codice premendo F5 o cliccando il Esegui pulsante. Quando richiesto, seleziona l'intervallo da elaborare e conferma.

Effetti: Questo codice elabora ogni cella selezionata, rimuove qualsiasi carattere che non è una lettera inglese standard e aggiorna la cella con il risultato pulito. I dati originali verranno sovrascritti, quindi è prudente fare un backup del foglio o lavorare su una copia.

Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora

Demo: Rimuovi caratteri non inglesi dalle stringhe utilizzando Kutools per Excel

 
Kutools per Excel: Oltre 300 strumenti utili a portata di mano! Goditi funzionalità AI gratuite per sempre! Scarica Ora!

I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e crea grafici | Attiva Funzioni avanzate
Funzionalità più usate: Trova, evidenziazione o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda senza formula...
Super RICERCA.VERT: Ricerca VERT per criteri multipli | Ricerca VERT per valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestore colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia stato di visibilità delle colonne nascoste | Confronta intervalli & colonne...
Funzionalità in primo piano: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestore di cartelle di lavoro & fogli | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email per elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
Top15 strumenti:12 strumenti Testo (Aggiungi testo, Elimina Caratteri Specifici, ...) |50+ tipi di grafico (Diagramma di Gantt, ...) |40+ formule pratiche (Calcola letà in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti Unione & Dividi (Unione avanzata righe, Dividi celle, ...) | ... e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e farti risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta le schede su Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra invece che in nuove finestre.
  • Aumenta la produttività del50% e riduce centinaia di clic del mouse ogni giorno!

Tutti gli add-in Kutools. Un solo programma di installazione

La suite Kutools for Office include add-in per Excel, Word, Outlook & PowerPoint più Office Tab Pro, ideale per i team che lavorano su più app di Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tutto-in-uno — Add-in per Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un solo programma di installazione, una sola licenza — configurazione in pochi minuti (pronto per MSI)
  • Funzionano meglio insieme — produttività ottimizzata su tutte le app Office
  • Prova completa30 giorni — nessuna registrazione, nessuna carta di credito
  • Massimo risparmio — costa meno rispetto all’acquisto singolo degli add-in