Hoe verwijder ik dubbele tekens of woorden in een reeks van een cel?
Stel dat elke cel dubbele tekens of woorden bevat en u de duplicaten wilt verwijderen en alleen unieke tekens of woorden wilt achterlaten. Hoe zou je dit probleem in Excel kunnen oplossen?
Verwijder dubbele tekens van een tekstreeks met door de gebruiker gedefinieerde functie
Verwijder dubbele woorden gescheiden door interpunctie met door de gebruiker gedefinieerde functie
Verwijder dubbele tekens van een tekstreeks met door de gebruiker gedefinieerde functie
Als je een lijst met tekstreeksen hebt, moet je nu de dubbele tekens verwijderen zoals in het onderstaande screenshot. Hier kan ik praten over een VBA-code om ermee om te gaan.
1. Houd de ALT + F11 toetsen om de te openen Microsoft Visual Basic for Applications-venster.
2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.
VBA-code: verwijder dubbele tekens van een tekstreeks in een cel
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. Sla vervolgens deze code op en sluit deze, ga terug naar het werkblad en voer deze formule in = verwijderdupes1 (A2) (A2 is de gegevenscel waarvan u duplicaten wilt verwijderen) in een lege cel naast uw gegevens, zie screenshot:
4. En sleep vervolgens de vulgreep naar de bereikcellen waarop u deze formule wilt toepassen, alle dubbele tekens zijn onmiddellijk uit elke cel verwijderd.
Verwijder dubbele woorden gescheiden door interpunctie met door de gebruiker gedefinieerde functie
Als er enkele woorden zijn die worden gescheiden door bepaalde leestekens in een cel, kunt u de dubbele woorden ook naar wens verwijderen. Voer de volgende stappen uit:
1. Houd de toets ingedrukt ALT + F11 toetsen om de te openen Microsoft Visual Basic for Applications-venster.
2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.
VBA-code: verwijder dubbele woorden gescheiden door interpunctie van een cel
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. Sla deze code vervolgens op en sluit deze, ga terug naar het werkblad en voer deze formule in = RemoveDupes2 (A2; ",") in een lege cel naast uw gegevens, zie screenshot:
4. Kopieer vervolgens de formule naar de gewenste cellen en alle dubbele woorden zijn uit elke cel verwijderd. Zie screenshot:
Note: In de bovenstaande formule, A2 geeft de cel aan die u wilt gebruiken, en de komma (,) staat voor het leesteken dat de woorden in een cel van elkaar scheidt. U kunt dit naar wens wijzigen in andere leestekens.
Beste Office-productiviteitstools
Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar effici毛ntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die u het meest nodig heeft...
Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
- Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!