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

Forumthread: Duplikate über mehrere Spalten finden und löschen

Duplikate über mehrere Spalten finden und löschen
22.09.2023 12:51:20
Andre
Hallo,
ich habe ein Tabellenblatt mit einer Spalte, die einen oder mehrere kommaseparierte Einträge beinhalten können. Ich würde gerne Duplikate entfernen, aber auf Basis nicht der Zelle, sondern der einzelnen kommagetrennten Zellwerte. Am Schluss soll dann pro Zelle ein Eintrag stehen.
Kann mir hier bitte jemand eine Lösungsmöglichkeit aufzeigen? Lieben Dank im Voraus

Beispiel:
https://www.herber.de/bbs/user/163044.xlsx

Danke für Hilfe und VG
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:09:14
daniel
Hi

so beispielsweise:

=EINDEUTIG(TEXTTEILEN(TEXTVERKETTEN(",";WAHR;Ausgang!A2:A4);;","))


A2:A4 sind die Zellen, die du auswerten willst.
Gruß Daniel
AW: alternativ ...
22.09.2023 13:32:45
neopa C
Hallo Andre,

... z.B. mit der Power Query (PQ) Funktionalität von Excel. Ist zwar etwas aufwendiger als mit Formel, aber interaktiv erstellbar.

- Auszuwertende Daten als "Tabelle formatieren";
- in PQ einlesen, Indexspalte hinzufügen;
- Datenspalte nach Komma teilen lassen;
- Entpivotieren der anderen Spalten außer Indexspalte,
- In der der erzeugte Wertespalte die Duplikate entfernen lassen,
- die andern Spalten entfernen
- das Ergebnis ausgeben lassen.

Gruß Werner
.. , - ...
Anzeige
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:27:33
Andre
Danke Daniel, für ein paar Zeilen funktioniert das. Ich hab 30.000 Zeilen, da kommt dann nur ein #WERT raus :/
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:31:18
Alwin Weisangler
Hallo Andre,

Vorschlag mit VBA:


Sub Trennen()
Dim arr(), objDic As Object
With Tabelle1
Set objDic = CreateObject("Scripting.Dictionary")
For i = 2 To 11
arrTmp = Split(.Cells(i, 1), ",")
For j = 0 To UBound(arrTmp)
objDic(arrTmp(j)) = 0
Next j
Next i
End With
arr = objDic.keys
Tabelle2.Cells(2, 2).Resize(UBound(arr) - LBound(arr) + 1, 1) = WorksheetFunction.Transpose(arr)
End Sub

Gruß Uwe
Anzeige
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:44:46
Andre
Hallo Uwe,
Ich bekomme hier folgenden Fehler:
Laufzeitfehler 424, Objekt erforderlich.
Tabelle2.Cells(2, 2).Resize(UBound(arr) - LBound(arr) + 1, 1) = WorksheetFunction.Transpose(arr)
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:48:11
Andre
Edit: Wenn ichs in der Beispieldatei mache, funktioniert es doch.
Wenn ich aber die vollständige Liste reinpacke, dann bekomme ich
Laufzeitfehler 13;
Typen unverträglich
Anzeige
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 13:56:18
Alwin Weisangler
mit vollständiger Dimensionierung:


Option Explicit

Sub Trennen()
Dim arr(), i&, j&, arrTmp, objDic As Object
With Tabelle1
Set objDic = CreateObject("Scripting.Dictionary")
For i = 2 To 11
arrTmp = Split(.Cells(i, 1), ",")
For j = 0 To UBound(arrTmp)
objDic(arrTmp(j)) = 0
Next j
Next i
End With
arr = objDic.keys
Tabelle2.Cells(2, 2).Resize(UBound(arr) - LBound(arr) + 1, 1) = WorksheetFunction.Transpose(arr)
End Sub

Teste es um beschreibe, falls der Fehler wieder auftritt, in welcher Stelle/Zeile der Fehler kommt.

Gruß Uwe
Anzeige
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 14:18:11
Andre
Vielen Dank. So funktioniert es. Ein Problem war ein Wert "#WERT" in der Spalte..
Danke und Grüße!
AW: Duplikate über mehrere Spalten finden und löschen
22.09.2023 14:42:45
daniel
wenn du das #Wert bereinigst, sollte auch die Formel funktionieren

btw wäre schon hilfreich, wenn du schon in deiner ersten Anfrage angibst, wie groß die Tabelle in Realität ist und welche weiteren Unterschiede zwischen Echt- und Beispieldaten sonst noch bestehen.
Dann kann man das gleich berücksichtigen, denn manchmal sind einfache lösungen für große Datenmengen zu langsam, während die schnellere Lösung aufwendig ist.
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige