Jak usunąć zduplikowane znaki lub słowa w ciągu komórki?
Przypuśćmy, że w każdej komórce znajdują się zduplikowane znaki lub słowa i chcesz usunąć duplikaty i pozostawić tylko unikalne znaki lub słowa. Jak możesz rozwiązać ten problem w programie Excel?
Usuń zduplikowane znaki ciągu tekstowego za pomocą funkcji zdefiniowanej przez użytkownika
Usuń zduplikowane znaki ciągu tekstowego za pomocą funkcji zdefiniowanej przez użytkownika
Jeśli masz listę ciągów tekstowych, teraz musisz usunąć zduplikowane znaki, jak pokazano na poniższym zrzucie ekranu. Tutaj mogę porozmawiać o kodzie VBA, aby sobie z tym poradzić.
1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Okno Microsoft Visual Basic for Applications.
2. Kliknij wstawka > Modułi wklej następujący kod w Okno modułu.
Kod VBA: Usuń zduplikowane znaki ciągu tekstowego w komórce
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. Następnie zapisz i zamknij ten kod, wróć do arkusza i wprowadź tę formułę = usuniętoupes1 (A2) (A2 to komórka danych, z której chcesz usunąć duplikaty) do pustej komórki oprócz danych, patrz zrzut ekranu:
4. A następnie przeciągnij uchwyt wypełniania do komórek zakresu, w których chcesz zastosować tę formułę, wszystkie zduplikowane znaki zostały natychmiast usunięte z każdej komórki.
Usuń zduplikowane słowa oddzielone znakami interpunkcyjnymi za pomocą funkcji zdefiniowanej przez użytkownika
Jeśli w komórce są słowa oddzielone określonymi znakami interpunkcyjnymi, możesz również usunąć zduplikowane słowa, jak chcesz. Wykonaj następujące czynności:
1. Przytrzymaj przycisk ALT + F11 klawisze, aby otworzyć Okno Microsoft Visual Basic for Applications.
2. Kliknij wstawka > Modułi wklej następujący kod w Okno modułu.
Kod VBA: usuń zduplikowane słowa oddzielone interpunkcją komórki
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. Następnie zapisz i zamknij ten kod, wróć do arkusza i wprowadź tę formułę = RemoveDupes2 (A2; ",") do pustej komórki obok danych, zobacz zrzut ekranu:
4. Następnie skopiuj formułę do potrzebnych komórek, a wszystkie zduplikowane słowa zostały usunięte ze wszystkich komórek. Zobacz zrzut ekranu:
Note: W powyższym wzorze, A2 wskazuje komórkę, której chcesz użyć, a przecinek (,) oznacza znak interpunkcyjny oddzielający słowa w komórce, możesz go zmienić na dowolne inne znaki interpunkcyjne według potrzeb.
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!