Excel: rimuovere caratteri, parole, numeri da stringhe di testo
Se hai un elenco di stringhe di testo in Excel che contengono caratteri, numeri o simboli indesiderati, potresti aver bisogno di rimuovere determinati elementi in base alla loro posizione o tipologia. Che si tratti di eliminare caratteri da sinistra, destra o dal centro, oppure di rimuovere caratteri e numeri specifici, Excel offre diversi strumenti per pulire i dati. Questa guida illustra passo dopo passo come utilizzare formule, Funzioni Definite dall'Utente (UDF) e funzionalità integrate per rimuovere facilmente caratteri, parole e numeri indesiderati dalle tue stringhe di testo.
Indice dei contenuti:
1. Rimuovi caratteri da sinistra, destra o dal centro delle stringhe di testo
- 1.1 Rimuovi i primi n caratteri dalle stringhe di testo
- 1.2 Rimuovi gli ultimi n caratteri dalle stringhe di testo
- 1.3 Rimuovi i primi, gli ultimi n caratteri o caratteri in una certa posizione utilizzando una funzione potente
- 1.4 Rimuovi sia i primi n che gli ultimi n caratteri dalle stringhe di testo con una formula
2. Rimuovi caratteri indesiderati / speciali dalle stringhe di testo
- 2.1 Rimuovi alcuni caratteri speciali dalle stringhe di testo
- 2.2 Rimuovi tutti i numeri dalle stringhe di testo
- 2.3 Rimuovi caratteri non numerici dalle stringhe di testo
- Rimuovi caratteri non numerici dalle stringhe di testo con una formula in Excel2016 e versioni precedenti
- Rimuovi caratteri non numerici dalle stringhe di testo con la funzione TESTO.UNISCI in Excel2019,2021,365
- Rimuovi caratteri non numerici dalle stringhe di testo con una Funzione Definita dall'Utente
- Rimuovi caratteri non numerici dalle stringhe di testo con una funzione semplice
- 2.4 Separa testo e numeri da una cella in due colonne
- 2.5 Rimuovi i caratteri di interruzione di riga dalle stringhe di testo
- Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con la funzione Trova e Sostituisci
- Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con la funzione SOSTITUISCI
- Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con codice VBA
- Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con un'opzione intelligente
- 2.6 Rimuovi spazi (iniziali, finali, extra o tutti gli spazi) dalle stringhe di testo
3. Rimuovi caratteri / testo prima o dopo un carattere specifico
- 3.1 Rimuovi testo prima o dopo il primo carattere specifico
- 3.2 Rimuovi testo prima o dopo la N-esima occorrenza di un carattere
- 3.3 Rimuovi testo prima o dopo l'ultima occorrenza di un carattere
- 3.4 Rimuovi testo tra parentesi
Rimuovi caratteri da sinistra, destra o dal centro delle stringhe di testo
Per molti di noi è un'operazione comune dover rimuovere alcuni caratteri da sinistra, destra o dal centro delle stringhe di testo nei fogli di lavoro Excel. In questa sezione vengono presentati alcuni trucchi rapidi e semplici per risolvere questo compito.
1.1 Rimuovi i primi n caratteri dalle stringhe di testo
Se hai bisogno di rimuovere i primi n caratteri da un elenco di stringhe di testo, i seguenti metodi possono esserti utili.
Utilizzando formule
Normalmente, per eliminare i caratteri dall'inizio delle stringhe di testo, puoi utilizzare la funzione SOSTITUISCI oppure una combinazione delle funzioni DESTRA e LUNGHEZZA.
Funzione SOSTITUISCI per rimuovere i primi N caratteri:
- "string": La stringa di testo da cui vuoi rimuovere i caratteri;
- "num_chars": Il numero di caratteri che vuoi rimuovere.
Ad esempio, per rimuovere i primi2 caratteri dalle celle, utilizza la formula seguente e poi trascina il quadratino di riempimento per copiare la formula nelle altre celle, vedi screenshot:
=REPLACE(A4, 1, 2, "")
Funzioni DESTRA e LUNGHEZZA per rimuovere i primi N caratteri:
- "string": La stringa di testo da cui vuoi rimuovere i caratteri;
- "num_chars": Il numero di caratteri che vuoi rimuovere.
Per rimuovere i primi2 caratteri dalle celle, applica la seguente formula:
=RIGHT(A4,LEN(A4)-2)
Utilizzando una Funzione Definita dall'Utente
Per rimuovere i primi n caratteri dalle celle, puoi anche creare una Funzione Definita dall'Utente per risolvere questo compito. Procedi come segue:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi i primi n caratteri dalle stringhe di testo
Function removeFirstx(rng As String, cnt As Long)
'Updateby Extendoffice
removeFirstx = Right(rng, Len(rng) - cnt)
End Function
3. Torna al foglio di lavoro ed inserisci questa formula: "=removefirstx(A4,2)" in una cella vuota, poi trascina il quadratino di riempimento verso il basso per ottenere i risultati desiderati, vedi screenshot:
Nota: In questa formula: "A4" è la cella da cui vuoi rimuovere i caratteri; Il numero "2" indica quanti caratteri vuoi rimuovere dall'inizio della stringa di testo.
1.2 Rimuovi gli ultimi n caratteri dalle stringhe di testo
Per rimuovere un numero specifico di caratteri dal lato destro delle stringhe di testo, puoi utilizzare una formula o una Funzione Definita dall'Utente.
Utilizzando una formula
Per rimuovere gli ultimi n caratteri dalle stringhe di testo, puoi utilizzare una formula basata sulle funzioni SINISTRA e LUNGHEZZA.
Funzioni SINISTRA e LUNGHEZZA per rimuovere gli ultimi N caratteri:
- "string": La stringa di testo da cui vuoi rimuovere i caratteri;
- "num_chars": Il numero di caratteri che vuoi rimuovere.
Per eliminare3 caratteri dalla fine delle stringhe di testo, utilizza questa formula e poi trascina il quadratino di riempimento per copiarla nelle altre celle, vedi screenshot:
=LEFT(A4, LEN(A4) - 3)
Utilizzando una Funzione Definita dall'Utente
Anche una Funzione Definita dall'Utente può aiutarti a rimuovere gli ultimi n caratteri da un elenco di celle. Segui questi passaggi:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi gli ultimi n caratteri dalle stringhe di testo
Function removeLastx(rng As String, cnt As Long)
'Updateby Extendoffice
removeLastx = Left(rng, Len(rng) - cnt)
End Function
3. Torna al foglio di lavoro ed inserisci questa formula: "=removelastx(A4,3)" in una cella vuota, poi trascina il quadratino di riempimento verso il basso per ottenere i risultati desiderati, vedi screenshot:
Nota: In questa formula: "A4" è la cella da cui vuoi rimuovere i caratteri; Il numero "3" indica quanti caratteri vuoi rimuovere dalla fine della stringa di testo.
1.3 Rimuovi i primi, gli ultimi n caratteri o caratteri in una certa posizione utilizzando una funzione potente
Ricordare molte formule diverse può essere complicato; per rimuovere caratteri da sinistra, destra o da una posizione specifica delle stringhe di testo, "Kutools per Excel" offre una funzione potente – "Rimuovi caratteri in una posizione specifica". Con questo strumento puoi gestire queste operazioni in pochi clic senza dover ricordare alcuna formula.
1. Seleziona le celle da cui vuoi rimuovere i caratteri, poi clicca su "Kutools" > "Testo" > "Rimuovi caratteri in una posizione specifica", vedi screenshot:
2. Nella finestra di dialogo "Rimuovi caratteri in una posizione specifica", esegui le seguenti operazioni:
2.1 Rimuovi i primi n caratteri dalle celle:
- Nella casella "Numeri", digita il numero di caratteri che vuoi rimuovere dalle stringhe. In questo esempio, rimuoverò i primi2 caratteri.
- Seleziona l'opzione "Inizia da sinistra" nella sezione "Posizione".
- Poi, clicca su "Ok" o "Applica" per ottenere il risultato come mostrato nello screenshot qui sotto.
2.2 Rimuovi gli ultimi n caratteri dalle celle:
- Nella casella "Numeri", digita il numero di caratteri che vuoi rimuovere dalle stringhe. In questo esempio, rimuoverò gli ultimi3 caratteri.
- Seleziona l'opzione "Inizia da destra" nella sezione "Posizione".
- Poi, clicca su "Ok" o "Applica" per ottenere il risultato come mostrato nello screenshot qui sotto.
2.3 Rimuovi n caratteri da una posizione specifica delle celle:
Se hai bisogno di rimuovere un numero specifico di caratteri da una certa posizione delle stringhe di testo, ad esempio rimuovendo3 caratteri a partire dal terzo carattere della stringa.
- Nella casella "Numeri", digita il numero di caratteri che vuoi rimuovere dalle stringhe. In questo esempio, rimuoverò3 caratteri da una posizione specifica.
- Seleziona l'opzione "Personalizzato" e digita il numero da cui vuoi iniziare a rimuovere i caratteri nella casella della sezione "Posizione". Qui, rimuoverò i caratteri a partire dal terzo carattere.
- Poi, clicca su "Ok" o "Applica" per ottenere il risultato come mostrato nello screenshot qui sotto.
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
1.4 Rimuovi sia i primi n che gli ultimi n caratteri dalle stringhe di testo con una formula
Quando hai bisogno di rimuovere alcuni caratteri da entrambi i lati delle stringhe di testo in Excel, puoi combinare le funzioni STRINGA.ESTRAI e LUNGHEZZA per creare una formula adatta a questo scopo.
- "string": La stringa di testo da cui vuoi rimuovere i caratteri;
- "left_chars": Il numero di caratteri da rimuovere da sinistra;
- "right_chars": Il numero di caratteri da rimuovere da destra.
Ad esempio, se devi rimuovere contemporaneamente i primi7 caratteri e gli ultimi5 caratteri dalle stringhe di testo, inserisci la seguente formula in una cella vuota:
=MID(A4, 7+1, LEN(A4) - (7+5))
Nota: In questa formula: "A4" è la cella da cui vuoi rimuovere i caratteri; Il numero "7" è il numero di caratteri da rimuovere dal lato sinistro; Il numero "5" è il numero di caratteri da rimuovere dal lato destro.
Poi, trascina il quadratino di riempimento verso il basso dove vuoi applicare questa formula e otterrai il risultato come mostrato nello screenshot qui sotto:
Rimuovi caratteri indesiderati / speciali dalle stringhe di testo
Quando importi dati da altre fonti in Excel, spesso vengono incollati nel foglio di lavoro caratteri speciali o indesiderati. Per rimuovere questi caratteri come #@$%^&, spazi, numeri, caratteri non numerici, interruzioni di riga, ecc., questa sezione offre alcuni metodi utili per aiutarti.
2.1 Rimuovi alcuni caratteri speciali dalle stringhe di testo
Se ci sono caratteri speciali come %^&*() all'interno delle stringhe di testo, per rimuovere questo tipo di caratteri puoi applicare uno dei tre trucchi seguenti.
Rimuovi diversi caratteri speciali dalle stringhe di testo con la funzione SOSTITUISCI
Normalmente, in Excel puoi annidare più funzioni SOSTITUISCI per sostituire ogni carattere specifico con nulla. La sintassi generica è:
- "string_cell": La cella che contiene la stringa di testo da cui vuoi rimuovere i caratteri speciali;
- "char1, char2, char3": I caratteri indesiderati che vuoi rimuovere.
Ora, copia o inserisci la formula seguente in una cella vuota:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "#", ""), "&", ""), "*", ""), "%", "")
Poi, trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula e tutti i caratteri indesiderati specificati verranno rimossi in una volta sola, vedi screenshot:
Suggerimento: Se ci sono più caratteri che vuoi rimuovere, basta annidare ulteriori funzioni SOSTITUISCI all'interno della formula.
Rimuovi più caratteri speciali dalle stringhe di testo con una Funzione Definita dall'Utente
Le funzioni SOSTITUISCI annidate funzionano bene se i caratteri speciali da rimuovere sono pochi. Tuttavia, se hai decine di caratteri da eliminare, la formula può diventare troppo lunga e difficile da gestire. In questo caso, la seguente Funzione Definita dall'Utente può aiutarti a completare rapidamente e facilmente il compito.
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi più caratteri speciali dalle stringhe di testo
Function RemoveUnwantedChars(Str As String, xchars As String)
'Updateby Extendoffice
For Index = 1 To Len(xchars)
Str = Replace(Str, Mid(xchars, Index, 1), "")
Next
RemoveUnwantedChars = Str
End Function
3. Poi, chiudi la finestra del codice e torna al foglio di lavoro, inserisci questa formula "=RemoveUnwantedChars(A2, $D$2)" in una cella vuota dove vuoi visualizzare il risultato, poi trascina il quadratino di riempimento verso il basso per ottenere i risultati desiderati, vedi screenshot:
Nota: Nella formula sopra: "A2" è la cella da cui vuoi rimuovere i caratteri; "$D$2" contiene i caratteri speciali che desideri eliminare (puoi digitare qualsiasi altro carattere speciale necessario).
Rimuovi più caratteri speciali dalle stringhe di testo utilizzando una funzione straordinaria
Se hai installato "Kutools per Excel", con la funzione "Elimina Caratteri Specifici" puoi rimuovere qualsiasi tipo di carattere, come numerici, alfabetici, non stampabili... da un elenco di celle secondo le tue esigenze.
1. Seleziona l'intervallo di celle da cui vuoi rimuovere i caratteri speciali, poi clicca su "Kutools" > "Testo" > "Elimina Caratteri Specifici", vedi screenshot:
2. Nella finestra di dialogo "Elimina Caratteri Specifici":
- Seleziona l'opzione "Personalizzato" nella sezione "Elimina Caratteri Specifici".
- Poi inserisci i caratteri speciali nella casella di testo che vuoi rimuovere.
- Poi, clicca su "Ok" o "Applica" per eliminare immediatamente i caratteri specificati. Vedi screenshot:
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
2.2 Rimuovi tutti i numeri dalle stringhe di testo
Se hai un elenco di stringhe di testo che contengono numeri, lettere e caratteri speciali, e ora vuoi solo rimuovere tutti i numeri mantenendo gli altri caratteri, questa sezione ti offre alcune soluzioni pratiche.
Rimuovi numeri dalle stringhe di testo con la funzione SOSTITUISCI
In Excel, la funzione SOSTITUISCI annidata può aiutare a sostituire tutti i numeri con nulla, quindi puoi usare la formula seguente per rimuovere tutti i numeri dalle celle:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,1,""),2,""),3,""),4,""),5,""),6,""),7,""),8,""),9,""),0,"")
Poi trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula e tutti i numeri saranno eliminati dall'elenco delle stringhe di testo, vedi screenshot:
Rimuovi numeri dalle stringhe di testo con la funzione TESTO.UNISCI
Se utilizzi Excel2019,2021 o365, la nuova funzione TESTO.UNISCI può anche aiutarti a rimuovere i numeri dalle stringhe di testo.
Copia la seguente formula in una cella vuota e poi premi contemporaneamente Ctrl + Shift + Invio per ottenere il primo risultato:
=TEXTJOIN("", TRUE, IF(ISERR(MID(A2, ROW(INDIRECT( "1:"&LEN(A2) )), 1) *1), MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1), ""))
Poi copia la formula nelle altre celle sottostanti dove vuoi applicarla, vedi screenshot:
Nota: TESTO.UNISCI è disponibile solo in Excel2019,2021 e Office365.
Rimuovi numeri dalle stringhe di testo con una Funzione Definita dall'Utente
Oltre alle due formule sopra, anche una Funzione Definita dall'Utente può esserti utile, procedi come segue:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi numeri dalle stringhe di testo
Function RemoveNumbers(Txt As String) As String
'Updateby Extendoffice
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNumbers = .Replace(Txt, "")
End With
End Function
3. Poi, chiudi ed esci dalla finestra del codice, torna al foglio di lavoro e inserisci questa formula:=RemoveNumbers(A2)in una cella vuota, poi trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula, vedi screenshot:
Rimuovi numeri dalle stringhe di testo con un'opzione pratica
Se sei stanco delle formule complicate, ti mostro ora uno strumento semplice – "Kutools per Excel" con la funzione "Elimina Caratteri Specifici". Con questa funzione puoi completare il compito in pochi clic.
1. Seleziona l'intervallo di celle da cui vuoi rimuovere i numeri, poi clicca su "Kutools" > "Testo" > "Elimina Caratteri Specifici".
2. Nella finestra di dialogo "Elimina Caratteri Specifici", esegui le seguenti operazioni:
- Seleziona l'opzione "Caratteri Numerici" nella sezione "Elimina Caratteri Specifici".
- Poi, clicca su "Ok" o "Applica" per rimuovere immediatamente i numeri. Vedi screenshot:
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
2.3 Rimuovi caratteri non numerici dalle stringhe di testo
Per rimuovere tutti i caratteri non numerici e mantenere solo i numeri dalle stringhe di testo, questa sezione illustra alcune soluzioni per risolvere il problema in Excel.
Rimuovi caratteri non numerici dalle stringhe di testo con una formula in Excel2016 e versioni precedenti
Se utilizzi Excel2016 o versioni precedenti, dovrai applicare una formula complessa per ottenere questo risultato. Copia o inserisci la formula seguente in una cella vuota:
=SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)) * ROW(INDIRECT("1:"&LEN(A2))), 0), ROW(INDIRECT("1:"&LEN(A2))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(A2)))/10)
Poi copia la formula nelle altre celle sottostanti dove vuoi applicarla, vedi screenshot:
Nota: Se i numeri in una stringa di testo iniziano con0, lo0 verrà perso.
Rimuovi caratteri non numerici dalle stringhe di testo con la funzione TESTO.UNISCI in Excel2019,2021,365
La formula sopra può risultare difficile da comprendere per molti. Se utilizzi Excel2019,2021 o365, esiste una formula più semplice che può aiutarti.
Copia o inserisci la seguente formula in una cella vuota e premi contemporaneamente i tasti "Ctrl + Shift + Invio" per ottenere il primo risultato corretto:
=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))
Poi trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula e otterrai il risultato come mostrato nello screenshot qui sotto:
Nota: Con questa formula, puoi vedere che gli0 iniziali vengono mantenuti poiché i numeri vengono restituiti come testo.
Rimuovi caratteri non numerici dalle stringhe di testo con una Funzione Definita dall'Utente
Naturalmente, puoi anche creare una tua Funzione Definita dall'Utente con una sintassi più semplice, procedi così:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi caratteri non numerici dalle stringhe di testo
Function Removenonnumeric(str As String) As String
'Updateby Extendoffice
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[^0-9]"
Removenonnumeric = .Replace(str, "")
End With
End Function
3. Poi, chiudi ed esci dalla finestra del codice, torna al foglio di lavoro e inserisci questa formula: =Removenonnumeric(A2)in una cella vuota, poi trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula: verranno estratti solo i numeri come mostrato nello screenshot qui sotto:
Rimuovi caratteri non numerici dalle stringhe di testo con una funzione semplice
Per eliminare direttamente i caratteri non numerici in un intervallo di celle, la funzione "Elimina Caratteri Specifici" di "Kutools per Excel" può risolvere il problema in pochi clic.
1. Seleziona l'intervallo di celle da cui vuoi rimuovere i caratteri non numerici, poi clicca su "Kutools" > "Testo" > "Elimina Caratteri Specifici".
2. Nella finestra di dialogo "Elimina Caratteri Specifici", imposta le seguenti opzioni:
- Seleziona l'opzione "Caratteri Non Numerici" nella sezione "Elimina Caratteri Specifici".
- Poi, clicca su "Ok" o "Applica" per rimuovere immediatamente tutti i caratteri non numerici. Vedi screenshot:
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
2.4 Separa testo e numeri da una cella in due colonne
A volte potresti voler estrarre testo e numeri dalle stringhe di testo in due colonne separate; con i seguenti metodi puoi completare rapidamente e facilmente questa operazione.
Separa testo e numeri da una cella in due colonne con una Funzione Definita dall'Utente
Utilizzando la seguente Funzione Definita dall'Utente puoi estrarre contemporaneamente testo e numeri, procedi come segue:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" >" Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Separa testo e numeri da stringhe di testo in due colonne
Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Updateby Extendoffice
Dim xLen As Long
Dim xStr As String
xLen = VBA.Len(pWorkRng.Value)
For i = 1 To xLen
xStr = VBA.Mid(pWorkRng.Value, i, 1)
If ((VBA.IsNumeric(xStr) And pIsNumber) Or (Not (VBA.IsNumeric(xStr)) And Not (pIsNumber))) Then
SplitText = SplitText + xStr
End If
Next
End Function
3. Poi, chiudi ed esci dalla finestra del codice, torna al foglio di lavoro e inserisci questa formula: =SplitText(A2,FALSE)in una cella vuota, poi trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula per ottenere tutto il testo, vedi screenshot:
4. Poi, inserisci questa formula: =SplitText(A2,TRUE)in un'altra cella e trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula per ottenere i numeri, vedi screenshot:
Separa testo e numeri da una cella in due colonne con una funzione facile
Se hai "Kutools per Excel", la funzione "Dividi celle" può aiutarti a dividere le celle in più colonne o righe in base a qualsiasi separatore, larghezza specificata o testo e numero.
1. Seleziona l'intervallo di celle che vuoi dividere, poi clicca su "Kutools" > "Unisci & Dividi" > "Dividi celle", vedi screenshot:
2. Nella finestra di dialogo "Dividi celle", seleziona l'opzione "Dividi Dati" nella sezione "Tipo", poi seleziona "Dividi per testo e numero" nella sezione "Separatore", vedi screenshot:
3. Poi, clicca su "Ok" e si aprirà un'altra finestra "Dividi celle"; seleziona una cella dove esportare testo e numeri separati e poi clicca su "OK". Ora puoi vedere che testo e numeri nelle celle selezionate sono stati divisi in due colonne come mostrato nella demo qui sotto:
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
2.5 Rimuovi i caratteri di interruzione di riga dalle stringhe di testo
Un'interruzione di riga consente di avere più righe nella stessa cella in Excel. A volte, quando copi dati da un sito web o separi manualmente il contenuto di una cella con "Alt + Invio", ottieni interruzioni di riga o ritorni a capo. In alcuni casi potresti voler eliminare le interruzioni di riga per visualizzare il contenuto della cella su una sola riga, come mostrato nello screenshot qui sotto. Qui ti mostro alcuni metodi per risolvere questo compito in Excel.
Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con la funzione Trova e Sostituisci
In Excel puoi utilizzare la funzione "Trova e Sostituisci" per rimuovere le interruzioni di riga, procedi così:
1. Seleziona l'area dati da cui vuoi rimuovere le interruzioni di riga.
2. Poi, clicca su "Home" > "Trova e Seleziona" > "Sostituisci" (oppure premi i tasti "Ctrl + H") per aprire la finestra di dialogo "Trova e Sostituisci", vedi screenshot:
3. Nella finestra di dialogo "Trova e Sostituisci" che si apre, esegui le seguenti operazioni:
- Posiziona il cursore nel campo "Trova cosa" e premi "Ctrl + J" sulla tastiera: potresti non vedere nulla, ma il carattere di interruzione di riga è stato inserito.
- Nel campo "Sostituisci con", lascia vuoto per eliminare le interruzioni di riga oppure premi la barra spaziatrice una volta per sostituirle con uno spazio.
4. Poi, clicca su "Sostituisci tutto": tutte le interruzioni di riga nelle celle selezionate verranno eliminate o sostituite con spazi in una volta sola. Vedi screenshot:
Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con la funzione SOSTITUISCI
Puoi anche creare una formula basata sulle funzioni SOSTITUISCI e CARATT per rimuovere le interruzioni di riga dalle stringhe di testo.
Applica la formula seguente per ottenere il risultato:
=SUBSTITUTE(A2,CHAR(10),"")
Suggerimento: La funzione SOSTITUISCI trova e sostituisce il carattere CARATT(10), che rappresenta l'interruzione di riga, con nulla. Se vuoi che il risultato sia separato da una virgola e uno spazio, puoi usare la formula seguente:
=SUBSTITUTE(A2,CHAR(10),", ")
Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con codice VBA
Se ti senti a tuo agio con il codice VBA, qui trovi anche un codice per te, procedi come segue:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi interruzioni di riga dalle stringhe di testo
Sub RemoveCarriage()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = Replace(Rng.Value, Chr(10), "")
Next
End Sub
3. Poi, premi il tasto "F5" per eseguire il codice e apparirà una finestra di selezione. Seleziona l'intervallo da cui vuoi rimuovere le interruzioni di riga, come mostrato nello screenshot qui sotto:
4. Poi, clicca su "OK" e tutte le interruzioni di riga verranno eliminate dall'intervallo dati selezionato.
Rimuovi i caratteri di interruzione di riga dalle stringhe di testo con un'opzione intelligente
Anche la funzione "Elimina Caratteri Specifici" di "Kutools per Excel" può aiutarti a rimuovere facilmente le interruzioni di riga.
1. Seleziona l'intervallo di celle da cui vuoi rimuovere le interruzioni di riga, poi clicca su "Kutools" >" Testo" > "Elimina Caratteri Specifici".
2. Nella finestra di dialogo "Elimina Caratteri Specifici", imposta le seguenti opzioni:
- Seleziona l'opzione "Caratteri Non Stampabili" nella sezione "Elimina Caratteri Specifici".
- Poi, clicca su "Ok" o "Applica" per rimuovere tutte le interruzioni di riga dall'intervallo dati selezionato. Vedi screenshot:
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
2.6 Rimuovi spazi (iniziali, finali, extra o tutti gli spazi) dalle stringhe di testo
Copiare e incollare testo da una fonte esterna in un foglio Excel spesso porta con sé fastidiosi spazi residui; rimuovere manualmente gli spazi iniziali, finali o extra può essere noioso. Fortunatamente, Excel offre alcuni trucchi semplici per gestire questa operazione.
Rimuovi spazi extra (iniziali, finali, in eccesso) dalle stringhe di testo con la funzione ANNULLA.SPAZI
In Excel, per eliminare gli spazi iniziali, finali e in eccesso dalle stringhe di testo, la semplice funzione ANNULLA.SPAZI può aiutarti. Questa funzione elimina tutti gli spazi tranne quelli singoli tra le parole.
Inserisci la formula seguente in una cella vuota:
=TRIM(A2)
Poi trascina il quadratino di riempimento verso il basso per copiare la formula nelle altre celle; ora puoi vedere che tutti gli spazi iniziali, finali e in eccesso tra le parole sono stati rimossi in una volta sola, come mostrato nello screenshot:
Rimuovi tutti gli spazi dalle stringhe di testo
Se vuoi rimuovere tutti gli spazi dalle stringhe di testo, puoi utilizzare la funzione SOSTITUISCI o la funzione Trova & Sostituisci.
Utilizzando la funzione SOSTITUISCI
Puoi usare la funzione SOSTITUISCI per sostituire tutti gli spazi con nulla; inserisci la formula seguente in una cella vuota:
=SUBSTITUTE(A2," ","")
Poi trascina il quadratino di riempimento verso il basso per copiare questa formula nelle altre celle necessarie e tutti gli spazi verranno eliminati come mostrato nello screenshot qui sotto:
Utilizzando la funzione Trova e Sostituisci
In realtà, anche la funzione "Trova & Sostituisci" di Excel può aiutarti a eliminare tutti gli spazi dalle celle selezionate, procedi come segue:
1. Seleziona l'area dati da cui vuoi rimuovere tutti gli spazi.
2. Poi, clicca su "Home" >" Trova e Seleziona" > "Sostituisci" (oppure premi i tasti "Ctrl + H") per aprire la finestra di dialogo "Trova e Sostituisci"; nella finestra che si apre, esegui le seguenti operazioni:
- Premi la barra spaziatrice nel campo "Trova cosa";
- Nel campo "Sostituisci con", lascia vuoto.
3. Poi, clicca su "Sostituisci tutto": tutti gli spazi nelle celle selezionate verranno eliminati in una volta sola. Vedi screenshot:
Rimuovi tutti i tipi di spazi dalle stringhe di testo con una funzione potente
"Kutools per Excel" offre una funzione potente – "Rimuovi spazi"; con questa utility puoi rimuovere non solo gli spazi iniziali, finali, in eccesso ma anche tutti gli spazi dagli intervalli selezionati in un'unica finestra di dialogo, migliorando la produttività.
1. Seleziona l'area dati da cui vuoi rimuovere gli spazi, poi clicca su "Kutools" > "Testo" > "Rimuovi spazi". Vedi screenshot:
2. Nella finestra di dialogo "Rimuovi spazi", seleziona il tipo di spazio che vuoi rimuovere dalla sezione "Tipo di spazio":
- Per rimuovere gli spazi iniziali, seleziona l'opzione "Spazi iniziali";
- Per rimuovere gli spazi finali, seleziona l'opzione "Spazi finali";
- Per rimuovere contemporaneamente gli spazi iniziali e finali, seleziona l'opzione "Spazi iniziali e finali";
- Per rimuovere tutti gli spazi in eccesso, seleziona l'opzione "Tutti gli spazi in eccesso";
- Per rimuovere tutti gli spazi, seleziona l'opzione "Tutti gli spazi".
3. Poi, clicca su "Ok" o "Applica" e otterrai il risultato desiderato.
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
Rimuovi caratteri / testo prima o dopo un carattere specifico
In questa sezione ti mostro alcune operazioni per rimuovere testo o caratteri prima o dopo la prima, l'ultima o la N-esima occorrenza di un carattere specifico.
3.1 Rimuovi testo prima o dopo il primo carattere specifico
Se vuoi rimuovere il testo prima o dopo il primo carattere specifico, come uno spazio o una virgola da un elenco di stringhe di testo come mostrato nello screenshot qui sotto, qui ti propongo due metodi.
Rimuovi testo prima del primo carattere specifico con una formula
Per rimuovere testo o caratteri prima del primo carattere specifico, puoi creare una formula basata sulle funzioni DESTRA, LUNGHEZZA e TROVA. La sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo.
Ad esempio, per rimuovere tutto ciò che precede la prima virgola dalle stringhe dell'elenco, applica la formula seguente in una cella vuota e poi trascinala verso il basso nelle celle necessarie, vedi screenshot:
=RIGHT(A2,LEN(A2)-FIND(",",A2))
Nota: Nella formula sopra: "A2" è la cella da cui vuoi rimuovere il testo; "," è il carattere specifico su cui vuoi basare la rimozione, puoi cambiarlo con qualsiasi altro carattere secondo necessità.
Rimuovi testo dopo il primo carattere specifico con una formula
Per rimuovere tutto ciò che segue il primo carattere specifico, puoi utilizzare le funzioni SINISTRA e TROVA per ottenere il risultato. La sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo.
Ora, inserisci la formula seguente in una cella vuota e poi trascina il quadratino di riempimento verso il basso nelle altre celle dove vuoi applicarla: tutti i caratteri dopo la prima virgola verranno rimossi in una volta sola, vedi screenshot:
=LEFT(A2,FIND(",",A2)-1)
3.2 Rimuovi testo prima o dopo la N-esima occorrenza di un carattere
A volte le stringhe di testo contengono più istanze di un delimitatore specifico; potresti voler rimuovere tutti i caratteri prima o dopo una specifica istanza, come la seconda, terza o quarta. Per gestire questo tipo di rimozione, puoi usare i seguenti trucchi:
Rimuovi testo prima della N-esima occorrenza di un carattere con una formula
Per rimuovere il testo prima della N-esima occorrenza di un carattere specifico, la formula seguente può aiutarti. La sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo;
- "N": L'occorrenza del carattere prima della quale rimuovere il testo.
Ad esempio, per rimuovere tutto ciò che precede la seconda virgola dalle stringhe di testo, applica la formula seguente:
=RIGHT(A2,LEN(A2)-FIND("#",SUBSTITUTE(A2,",","#",2)))
Nota: Nella formula sopra: "A2" è la cella da cui vuoi rimuovere il testo; "," è il carattere specifico su cui vuoi basare la rimozione, puoi cambiarlo con qualsiasi altro carattere secondo necessità; "2" indica la N-esima virgola prima della quale vuoi rimuovere il testo.
Poi, trascina il quadratino di riempimento per copiare la formula nelle altre celle, vedi screenshot:
Rimuovi testo dopo la N-esima occorrenza di un carattere con una formula
Per rimuovere il testo dopo la N-esima occorrenza di un separatore specifico, le funzioni SINISTRA, SOSTITUISCI e TROVA possono aiutarti. La sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo;
- "N": L'occorrenza del carattere dopo la quale rimuovere il testo.
Una volta compresa la sintassi di base, copia o inserisci la formula seguente in una cella vuota:
=LEFT(A2, FIND("#", SUBSTITUTE(A2, ",", "#", 2)) -1)
Nota: Nella formula sopra: "A2" è la cella da cui vuoi rimuovere il testo; "," è il carattere specifico su cui vuoi basare la rimozione, puoi cambiarlo con qualsiasi altro carattere secondo necessità; "2" indica la N-esima virgola dopo la quale vuoi rimuovere il testo.
Poi, trascina il quadratino di riempimento per copiare la formula nelle altre celle e tutti i caratteri dopo la seconda virgola verranno eliminati in una volta sola, vedi screenshot:
Rimuovi testo prima o dopo la N-esima occorrenza di un carattere con una Funzione Definita dall'Utente
Come puoi vedere, puoi risolvere i casi di rimozione del testo prima o dopo la N-esima occorrenza di un carattere utilizzando le funzioni native di Excel in diverse combinazioni. Il problema è che devi ricordare queste formule complesse. In questo caso, creo una Funzione Definita dall'Utente che copre tutti gli scenari, procedi così:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi testo prima o dopo la N-esima occorrenza di un carattere
Function RemoveTextOccurrence(Str As String, Delimiter As String, Occurrence As Integer, IsAfter As Boolean)
Dim xStr As String
Dim xStrLen, xF, xIntStart As Integer
xStr = Str
xStrLen = Len(xStr)
xIntStart = 1
For xF = 1 To Occurrence
xIntStart = InStr(xIntStart + 1, xStr, Delimiter, vbTextCompare)
If (xIntStart = 0) Or (xIntStart < 0) Then
If IsAfter Then
RemoveTextOccurrence = xStr
Else
RemoveTextOccurrence = ""
End If
Exit Function
End If
Next
If IsAfter Then
RemoveTextOccurrence = Mid(Str, 1, xIntStart - 1)
Else
RemoveTextOccurrence = Mid(Str, xIntStart + 1)
End If
End Function
3. Poi, chiudi ed esci dalla finestra del codice, torna al foglio di lavoro e usa le seguenti formule:
Rimuovi testo prima della seconda occorrenza di una virgola:
=RemoveTextOccurrence(A2, ", ", 2, FALSE)
Rimuovi testo dopo la seconda occorrenza di una virgola
=RemoveTextOccurrence(A2, ", ", 2, TRUE)
3.3 Rimuovi testo prima o dopo l'ultima occorrenza di un carattere
Se hai bisogno di rimuovere tutto il testo prima o dopo l'ultimo carattere specifico, lasciando solo le sottostringhe prima o dopo di esso, questa sezione fornisce formule per risolvere il problema.
Rimuovi testo prima dell'ultima occorrenza di un carattere con una formula
Per rimuovere tutti i caratteri prima dell'ultima occorrenza di un carattere, la sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo;
Ora, se devi rimuovere il testo prima dell'ultima virgola, copia o inserisci la formula seguente in una cella vuota:
=RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,",","#",LEN(A2)-LEN(SUBSTITUTE(A2,",","")))))
Nota: Nella formula sopra: "A2" è la cella da cui vuoi rimuovere il testo; "," è il carattere specifico su cui vuoi basare la rimozione, puoi cambiarlo con qualsiasi altro carattere secondo necessità.
Poi, trascina il quadratino di riempimento per copiare la formula nelle altre celle e tutti i caratteri prima dell'ultima virgola verranno eliminati come mostrato nello screenshot qui sotto:
Rimuovi testo dopo l'ultima occorrenza di un carattere con formule
Se i valori delle celle sono separati da un numero variabile di delimitatori e vuoi eliminare tutto ciò che segue l'ultima occorrenza di quel delimitatore, la sintassi generica è:
- "cell": Il riferimento di cella o la stringa di testo da cui vuoi rimuovere il testo;
- "char": Il separatore specifico su cui vuoi basare la rimozione del testo;
Copia o inserisci la formula seguente in una cella vuota e poi trascina il quadratino di riempimento verso il basso per ottenere gli altri risultati desiderati, vedi screenshot:
=LEFT(A2,FIND("#",SUBSTITUTE(A2,",>","#",LEN(A2)-LEN(SUBSTITUTE(A2,",",""))))-1)
"Nota": Nella formula sopra: "A2" è la cella da cui vuoi rimuovere il testo; "," è il carattere specifico su cui vuoi basare la rimozione, puoi cambiarlo con qualsiasi altro carattere secondo necessità.
3.4 Rimuovi testo tra parentesi
Se hai un elenco di stringhe di testo con parte dei caratteri racchiusi tra parentesi, ora potresti voler rimuovere tutti i caratteri all'interno delle parentesi, comprese le parentesi stesse, come mostrato nello screenshot qui sotto. Questa sezione illustra alcuni trucchi per risolvere questo compito in Excel.
Rimuovi testo tra parentesi con la funzione Trova e Sostituisci
In Excel, la funzione integrata Trova e Sostituisci può aiutarti a trovare tutto il testo tra parentesi e sostituirlo con nulla. Procedi così:
1. Seleziona l'elenco dati da cui vuoi rimuovere i testi tra parentesi.
2. Poi, clicca su "Home" > "Trova e Seleziona" > "Sostituisci" (oppure premi i tasti "Ctrl + H") per aprire la finestra di dialogo Trova e Sostituisci; nella finestra, esegui le seguenti operazioni:
- Nel campo "Trova cosa", digita "(*)" nella casella di testo;
- Nel campo "Sostituisci con", lascia vuoto.
3. Poi, clicca su "Sostituisci tutto": tutti i caratteri tra parentesi (incluse le parentesi) nelle celle selezionate verranno eliminati in una volta sola. Vedi screenshot:
Suggerimento: La funzione "Trova e Sostituisci" funziona anche per due o più coppie di parentesi all'interno delle stringhe di testo.
Rimuovi testo tra parentesi con una formula
Oltre alla funzione Trova e Sostituisci, puoi anche utilizzare una formula per risolvere questo compito in Excel. La sintassi generica è:
- "text": La stringa di testo o il riferimento di cella da cui vuoi rimuovere i caratteri.
Ora, copia o inserisci la formula seguente in una cella vuota dove vuoi ottenere il risultato:
=SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),"")
Poi, trascina il quadratino di riempimento verso il basso nelle celle dove vuoi applicare questa formula e tutti i testi tra parentesi, comprese le parentesi, verranno rimossi in una volta sola, vedi screenshot:
Suggerimento: Se non ci sono parentesi nel valore della cella, verrà visualizzato un errore dopo aver applicato la formula sopra; per ignorare l'errore, usa la formula seguente:
=IFERROR(SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),""),A2)
Rimuovi testo tra parentesi con una Funzione Definita dall'Utente
La formula sopra funziona bene per rimuovere testo da una sola coppia di parentesi. Tuttavia, se devi rimuovere testo da più coppie di parentesi all'interno delle stringhe di testo, la formula non funzionerà correttamente. Qui creo una semplice Funzione Definita dall'Utente per risolvere il problema.
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi testo tra parentesi
Function remtxt(ByVal str As String) As String
'Updateby Extendoffice
While InStr(str, "(") > 0 And InStr(str, ")") > InStr(str, "(")
str = Left(str, InStr(str, "(") - 1) & Mid(str, InStr(str, ")") + 1)
Wend
remtxt = Trim(str)
End Function
3. Torna al foglio di lavoro, inserisci questa formula in una cella vuota: "=remtxt(A2)", poi trascina il quadratino di riempimento verso il basso per applicare la formula. Tutto il testo tra parentesi, comprese le parentesi stesse, verrà rimosso come mostrato nello screenshot:
Rimuovi parole dalle stringhe di testo
In alcuni casi potresti voler rimuovere alcune parole da un elenco di celle, come la prima o l'ultima parola, oppure parole duplicate in una cella. Per risolvere questi tipi di rimozione, questa sezione ti mostra alcuni metodi.
4.1 Rimuovi la prima o l'ultima parola dalla stringa di testo
Per rimuovere la prima o l'ultima parola da un elenco di stringhe di testo, le seguenti formule possono esserti utili.
Rimuovi la prima parola dalla stringa di testo con una formula
Per rimuovere la prima parola da un elenco di stringhe di testo, puoi creare una semplice formula basata sulle funzioni DESTRA, LUNGHEZZA e TROVA. La sintassi generica è:
- "text": La stringa di testo o il riferimento di cella da cui vuoi rimuovere la prima parola.
Ora, inserisci o copia la formula seguente in una cella vuota:
=RIGHT(A2,LEN(A2)-FIND(" ",A2))
Poi, trascina il quadratino di riempimento verso il basso per applicare la formula alle altre celle, vedi screenshot:
Suggerimento: Se hai bisogno di rimuovere le prime N parole dalle celle, usa la formula seguente:
- "text": La stringa di testo o il riferimento di cella da cui vuoi rimuovere le prime n parole;
- "N": Indica quante parole vuoi rimuovere dall'inizio della stringa di testo.
Ad esempio, per rimuovere le prime due parole dalle celle, copia o inserisci la formula seguente in una cella vuota per ottenere il risultato desiderato, vedi screenshot:
=MID(TRIM(A2),1+FIND("~",SUBSTITUTE(TRIM(A2)," ","~",2)),255)
Rimuovi l'ultima parola dalla stringa di testo con una formula
Per rimuovere l'ultima parola dalle stringhe di testo, puoi anche utilizzare una formula. La sintassi generica è:
- "text": La stringa di testo o il riferimento di cella da cui vuoi rimuovere l'ultima parola;
Usa la formula seguente in una cella vuota, poi trascina il quadratino di riempimento verso il basso per applicarla alle altre celle, vedi screenshot:
=LEFT(TRIM(A2),FIND("~",SUBSTITUTE(A2," ","~",LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))))-1)
Suggerimento: Per rimuovere le ultime N parole da un elenco di celle, la sintassi generica è:
- "text": La stringa di testo o il riferimento di cella da cui vuoi rimuovere le ultime n parole;
- "N": Indica il numero di parole che vuoi rimuovere dalla fine della stringa di testo.
Supponendo di voler eliminare le ultime3 parole da un elenco di celle, usa la formula seguente per ottenere il risultato, vedi screenshot:
=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))-(3-1))))
4.2 Rimuovi caratteri o parole duplicate all'interno di una cella
Quando si rimuovono valori o righe duplicati, Excel offre diverse opzioni, ma per rimuovere caratteri o parole duplicate all'interno di una cella non esiste una funzione integrata efficace. In questo caso, questa sezione ti aiuterà a creare alcune Funzioni Definite dall'Utente per risolvere il problema.
Rimuovi caratteri duplicati all'interno di una cella utilizzando una Funzione Definita dall'Utente
Se hai più occorrenze dello stesso carattere in una cella, per rimuovere i caratteri duplicati e mantenere solo la prima occorrenza come mostrato nello screenshot qui sotto, puoi usare la seguente Funzione Definita dall'Utente.
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi caratteri duplicati all'interno di una cella
Function RemoveDupeschars(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
xChar = VBA.Mid(xValue, i, 1)
If xDic.Exists(xChar) Then
Else
xDic(xChar) = ""
xOutValue = xOutValue & xChar
End If
Next
RemoveDupeschars = xOutValue
End Function
3. Poi chiudi la finestra del codice, torna al foglio di lavoro e inserisci questa formula =RemoveDupeschars(A2)in una cella accanto ai tuoi dati, poi trascina il quadratino di riempimento sulle celle dove vuoi applicare la formula, vedi screenshot:
Nota:"A2" è la cella dati da cui vuoi rimuovere i caratteri duplicati.
Suggerimento: La funzione fa distinzione tra maiuscole e minuscole, quindi tratta lettere minuscole e maiuscole come caratteri diversi.
Rimuovi parole duplicate all'interno di una cella utilizzando una Funzione Definita dall'Utente
Supponendo di avere le stesse parole o stringhe di testo in una cella e di voler eliminare tutte le parole uguali dalla cella come mostrato nello screenshot qui sotto. Puoi usare la seguente Funzione Definita dall'Utente per risolvere il problema in Excel.
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Rimuovi parole duplicate all'interno di una cella
Function RemoveDupeswords(txt As String, Optional delim As String = " ") As String
'Updateby Extendoffice
Dim x
With CreateObject("Scripting.Dictionary")
.CompareMode = vbTextCompare
For Each x In Split(txt, delim)
If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
Next
If .Count > 0 Then RemoveDupeswords = Join(.keys, delim)
End With
End Function
3. Poi chiudi la finestra del codice, torna al foglio di lavoro e inserisci questa formula =RemoveDupeswords(A2,", ")in una cella accanto ai tuoi dati, poi trascina il quadratino di riempimento sulle celle dove vuoi applicare la formula, vedi screenshot:
Nota: "A2" è la cella da cui vuoi eliminare le parole duplicate e la virgola e lo spazio (", ") sono i delimitatori per separare le stringhe di testo; puoi cambiarli con qualsiasi altro delimitatore secondo necessità.
Suggerimento: Questa funzione non fa distinzione tra maiuscole e minuscole; lettere minuscole e maiuscole sono considerate uguali.
4.3 Riduci la stringa di testo a N parole
Se hai una lunga stringa di testo in una cella, a volte potresti volerla ridurre a un certo numero di parole, cioè mantenere solo le prime n parole e tagliare le restanti. Questa sezione mostra alcuni trucchi per aiutarti a raggiungere questo obiettivo in Excel.
Riduci la stringa di testo a N parole con una formula
Per ridurre una stringa di testo a N parole, puoi creare una formula basata sulle funzioni SINISTRA, TROVA e SOSTITUISCI. La sintassi generica è:
- "text": La stringa di testo o il riferimento di cella che vuoi ridurre;
- "N": Il numero di parole che vuoi mantenere dal lato sinistro della stringa di testo fornita.
Per eseguire questa operazione, copia o inserisci la formula seguente in una cella vuota:
=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",B2))-1)
Poi, trascina il quadratino di riempimento verso il basso per applicare questa formula alle altre celle, vedi screenshot:
Riduci la stringa di testo a N parole con una Funzione Definita dall'Utente
Oltre alla formula sopra, puoi anche creare una Funzione Definita dall'Utente per risolvere questo compito, procedi così:
1. Tieni premuti i tasti "Alt + F11" per aprire la finestra "Microsoft Visual Basic for Applications".
2. Clicca su "Inserisci" > "Modulo" e incolla il seguente codice nella finestra del modulo.
Codice VBA: Riduci la stringa di testo a N parole
Function GetNWords(StrWords As String, Num_of_Words As Integer) As String
'Updateby Extendoffice
Dim xArr
Dim xRes As String
Dim xF As Integer
xStr = StrWords
If (Num_of_Words < 1) Then
GetNWords = ""
Exit Function
End If
xArr = Split(xStr, " ")
xRes = ""
On Error Resume Next
For xF = 0 To UBound(xArr)
If Trim(xArr(xF)) <> "" Then
Num_of_Words = Num_of_Words - 1
If xRes = "" Then
xRes = Trim(xArr(xF))
Else
xRes = xRes & " " & Trim(xArr(xF))
End If
End If
If Num_of_Words = 0 Then Exit For
Next
If Num_of_Words = 0 Then
GetNWords = xRes & "..."
Else
GetNWords = xRes & "..."
End If
End Function
3. Poi chiudi ed esci dalla finestra del codice, torna al foglio di lavoro e inserisci questa formula: =GetNWords(A2,B2)in una cella vuota, poi trascina il quadratino di riempimento verso il basso per applicare questa formula alle altre celle: solo il numero specificato di parole verrà mantenuto come mostrato nello screenshot qui sotto:
I 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 oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione 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 della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!