Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Duplikate innerhalb einer Zelle löschen

Duplikate innerhalb einer Zelle löschen
01.08.2022 19:48:19
MaxShiv
Hallo liebe Community,
ich komme leider nicht mehr weiter und finde für mein Problem keine passende Lösung im Web.
Beschreibung:
In einer Arbeitsmappe gibt es eine Spalte "I", in der verantwortliche Rollen für Aufgaben in den Zeilen eingetragen sind.
Dabei kann es sein, dass für bestimmte Aufgabenbereiche dieselbe Rolle mehrfach in einer Zelle steht.
Beispiel:
Aufgabe: (Spalte A) Rolle: (Spalte I)
5 Onboarding VO-Obd, VO-Obd, Fachbereich xyz
6 Diagnose VO-Diag, VO-Diag, VO-Diag, Fachbereich xyz
Nun sollen alle Duplikate innerhalb einer Zelle gelöscht werden.
Aus dem Beispiel sollte folgendes resultieren:
Aufgabe: (Spalte A) Rolle: (Spalte I)
5 Onboarding VO-Obd, Fachbereich xyz
6 Diagnose VO-Diag, Fachbereich xyz
Ich wäre sehr dankbar, wenn mir jemand helfen könnte, hierfür einen passenden VBA-Code zu kreieren.
Vielen Dank im Voraus!
Viele Grüße
Max

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Duplikate innerhalb einer Zelle löschen
01.08.2022 20:11:41
Daniel
Hi
lade bitte deine Datei mit ein paar aussagekräftigen Beispieldaten hoch.
die Daten können abgewandelt sein (Datenschutz), sollten aber vom Ausfbau her den Echtdaten entsprechen.
außerdem solltest du in einer Spalte zeigen, wie dein Wunschergebnis für die Beispieldaten aussieht (von Hand erstellt)
beachte, dass ohne Formatierung die Texte im Forum bereinigt werden, dh wenn du, um eine Tabelle anzuzeigen, mit Leerzeichen Abstände darstellen willst, so werden diese wegglättet. du müsstest dass dann schon als Formel oder Code formatieren.
Gruß Daniel
AW: Duplikate innerhalb einer Zelle löschen
01.08.2022 20:48:43
GerdL
Hallo Max,
teste mal.

Sub Unit()
Dim a  As Integer, C As Range, txt As Variant
For Each C In Range("a2:a3").Cells
txt = Split(C.Value, ",")
If UBound(txt) > 0 Then
For a = UBound(txt) To 1 Step -1
If InStr(txt(0), txt(a)) Then txt(a) = ","
Next
C = Replace(Join(txt, ","), ",", "")
End If
Next
End Sub
Gruß Gerd
Anzeige
AW: Duplikate innerhalb einer Zelle löschen
01.08.2022 22:42:21
MaxShiv
Hallo Gerd,
den Code habe ich ausprobiert, allerdings werden hierbei nur die "," entfernt und die Duplikate bleiben bestehen.
Ich habe nun eine Beispiel-Mappe hochgeladen. Danke Daniel.
Bei der gelb markierten Spalte (I) befinden sich die betroffenen Zellen mit den Duplikat, siehe:
https://www.herber.de/bbs/user/154474.xlsx
Vielen Dank für die Hilfe!
LG, Max
In *meinem* Excel funktioniert …
02.08.2022 05:16:10
RPP63
… funktioniert eine einfache Formel, Max.
Mir ist klar, dass dies in Excel 2013 nicht funktioniert.
Könnte aber vielleicht den Anstoß für ein Excel-Abo geben.
 I
7Empfänger
8 
9XS FB/TPK, XS E-weit, XS E-weit, XS E-weit, extern
10TypZul, TypZul, XS E-weit, XS E-weit, TypZul, XS FB/TPK, XS E-weit
11XS E-weit, XS E-weit, XS E-weit
12XS FB/TPK
13XS E-weit
14XS FB/TPK
15XS FB/TPK
16XS FB/TPK
17XS E-weit
18XS FB/TPK, XS FB/TPK
19XS E-weit, XS E-weit
20XS FB/TPK, FuV-OBD-FB/TPK, XS FB/TPK, XS E-weit, XS FB/TPK
21TypZul
22 
23XS FB/TPK, XS E-weit, extern
24TypZul, XS E-weit, XS FB/TPK
25XS E-weit
26XS FB/TPK
27XS E-weit
28XS FB/TPK
29XS FB/TPK
30XS FB/TPK
31XS E-weit

ZelleFormel
I23=TEXTVERKETTEN(", ";1;EINDEUTIG(TEXTTEILEN(I9;;", ")))

Gruß Ralf
Anzeige
per UDF für altes Excel
02.08.2022 05:52:36
RPP63
Geht (unter Windows!) auch mit Excel 2013 per UDF:

Function Uniques$(Liste$)
Dim Arr: Arr = Split(Liste, ", ")
Dim i&
With CreateObject("scripting.dictionary")
For i = 0 To UBound(Arr)
If Not .Exists(Arr(i)) Then .Add Arr(i), Nothing
Next
Uniques = Join(.Keys, ", ")
End With
End Function
 ABC
1Empfänger  
2   
3XS FB/TPK, XS E-weit, XS E-weit, XS E-weit, externXS FB/TPK, XS E-weit, externXS FB/TPK, XS E-weit, extern
4TypZul, TypZul, XS E-weit, XS E-weit, TypZul, XS FB/TPK, XS E-weitTypZul, XS E-weit, XS FB/TPKTypZul, XS E-weit, XS FB/TPK
5XS E-weit, XS E-weit, XS E-weitXS E-weitXS E-weit
6XS FB/TPKXS FB/TPKXS FB/TPK
7XS E-weitXS E-weitXS E-weit
8XS FB/TPKXS FB/TPKXS FB/TPK
9XS FB/TPKXS FB/TPKXS FB/TPK
10XS FB/TPKXS FB/TPKXS FB/TPK
11XS E-weitXS E-weitXS E-weit
12XS FB/TPK, XS FB/TPKXS FB/TPKXS FB/TPK
13XS E-weit, XS E-weitXS E-weitXS E-weit
14XS FB/TPK, FuV-OBD-FB/TPK, XS FB/TPK, XS E-weit, XS FB/TPKXS FB/TPK, FuV-OBD-FB/TPK, XS E-weitXS FB/TPK, FuV-OBD-FB/TPK, XS E-weit
15TypZulTypZulTypZul

ZelleFormel
B3=TEXTVERKETTEN(", ";1;EINDEUTIG(TEXTTEILEN(A3;;", ")))
C3=Uniques(A3)

Gruß Ralf
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige