Come rimuovere caratteri o parole duplicati nella stringa di una cella?
Supponendo che ci siano caratteri o parole duplicati in ogni cella e si desidera rimuovere i duplicati e lasciare solo caratteri o parole univoci. Come hai potuto risolvere questo problema in Excel?
Rimuovi i caratteri duplicati della stringa di testo con la funzione definita dall'utente
Rimuovi le parole duplicate separate dalla punteggiatura con la funzione definita dall'utente
Rimuovi i caratteri duplicati della stringa di testo con la funzione definita dall'utente
Se si dispone di un elenco di stringhe di testo, ora è necessario rimuovere i caratteri duplicati come mostrato nella seguente schermata. Qui posso parlare di un codice VBA per affrontarlo.
1. Tieni premuto il ALT + F11 chiavi per aprire il Finestra di Microsoft Visual Basic, Applications Edition.
2. Clic inserire > Modulie incolla il codice seguente nel file Finestra del modulo.
Codice VBA: rimuove i caratteri duplicati della stringa di testo in una cella
Function RemoveDupes1(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
RemoveDupes1 = xOutValue
End Function
3. Quindi salva e chiudi questo codice, torna al foglio di lavoro e inserisci questa formula = removedupes1 (A2) (A2 è la cella di dati da cui vuoi rimuovere i duplicati) in una cella vuota oltre ai tuoi dati, vedi screenshot:
4. Quindi trascina il quadratino di riempimento sulle celle dell'intervallo in cui desideri applicare questa formula, tutti i caratteri duplicati sono stati rimossi immediatamente da ogni cella.
Rimuovi le parole duplicate separate dalla punteggiatura con la funzione definita dall'utente
Se in una cella ci sono alcune parole separate da determinati segni di punteggiatura, puoi anche rimuovere le parole duplicate come preferisci. Si prega di fare con i seguenti passaggi:
1. Tenere premuto il tasto ALT + F11 chiavi per aprire il Finestra di Microsoft Visual Basic, Applications Edition.
2. Clic inserire > Modulie incolla il codice seguente nel file Finestra del modulo.
Codice VBA: rimuove le parole duplicate separate dalla punteggiatura di una cella
Function RemoveDupes2(txt As String, Optional delim As String = " ") As String
Dim x
'Updateby Extendoffice
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 RemoveDupes2 = Join(.keys, delim)
End With
End Function
3. Quindi salva e chiudi questo codice, torna al foglio di lavoro e inserisci questa formula = RemoveDupes2 (A2, ",") in una cella vuota accanto ai tuoi dati, vedi screenshot:
4. Quindi copia la formula nelle celle necessarie e tutte le parole duplicate sono state rimosse da ogni cella. Vedi screenshot:
Note:: Nella formula sopra, A2 indica la cella che desideri utilizzare e la virgola (,) sta per il segno di punteggiatura che separa le parole in una cella, puoi cambiarlo con qualsiasi altra punteggiatura secondo le tue necessità.
I migliori strumenti per la produttività in ufficio
Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Fai clic qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro
- 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, piuttosto che in nuove finestre.
- Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!