Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1828to1832
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro Duplikate bis auf 2 entfernen

Makro Duplikate bis auf 2 entfernen
04.05.2021 05:14:14
trader-hawk
Hallo,
ich habe ein Makro das Duplikate entfernt. Wie schaffe ich es aber das er nicht nur den ersten Wert sondern die ersten 2 oder auch 3 übrig lässt?
Bei dem Code: Range("A:G").RemoveDuplicates Columns:=6, Header:=xlNo
ist das komische, das es eigentlich A:E und Columns:=5 heisen sollte. Sobald ich aber weniger als G und 6 eingebe funktioniert es nicht.
Keine Ahnung warum.
Userbild
https://www.herber.de/bbs/user/145972.xlsm
Gruß Arend

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 17:16:12
Herbert_Grom
Hallo Arend,
probiers mal damit:

Sub Duplikate_entfernen()
'* Spalte C wird EUR oder $$$ in eine Zahl umgewandelt damit man Formeln anwenden kann
With Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
.Offset(, 4).FormulaR1C1 = "=SUBSTITUTE(SUBSTITUTE(RC[-2],""EUR"",""""),""$$$"","""")*1"
'* Spalte B "Aktienname" wird auf 1 Wort gekürzt
.Offset(, 5).FormulaR1C1 = "=IFERROR(LEFT(RC[-4],SEARCH("" "",SUBSTITUTE(RC[-4],"" "","" "",2))-1),RC[-4])"
End With
Cells.Sort Key1:=Range("B1"), Order1:=xlAscending, _
Key2:=Range("E1"), Order2:=xlDescending, _
Key3:=Range("D1"), Order3:=xlDescending, Header:=xlNo
Range("A:F").RemoveDuplicates Columns:=6, Header:=xlNo
End Sub
Servus
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 18:13:05
trader-hawk
Hallo Herbert,
vielen Dank für Deine Hilfe. Ja der Fehler ist jetzt weg. Weniger ist manchmal doch mehr. Super.
Zu meinem Hauptproblem hast du keine Lösung oder? Das er mir nicht nur den ersten sondern die ersten 2 beim entfernen übrig lässt. Oder geht das gar nicht? Denn startet man die Duplilkaten-Suche händisch gibt es diesen Punkt nicht. Er löscht alle Duplikate bis auf den ersten und ich brauche 2 und für ein anderes Programm auch 3 die stehen bleiben.
Hier nochmal die Version ohne den Fehler:
https://www.herber.de/bbs/user/145990.xlsm
Gruß Arend
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 18:15:51
Herbert_Grom
Hallo Arend,
ich bin schon dran an der Lösung für die 2 oder 3 Ersten. Aber heute schaffe ich das nicht mehr. Aber morgen klappt es bestimmt.
Servus
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 18:26:20
trader-hawk
Hallo Herbert,
sorry ich sah erst jetzt das Du noch mehr geschrieben hast. Das Forum ist gewöhnungsbedürftig aber dafür kompetent und sehr schnell in der Lösungsfindung.
Ich sortiere ja als erstes nach B also den Namen und dieser ist Maßgebend. Nach dem Namen wird nach dem höchsten Wert in E sortiert und dann nach dem höchsten % und diese Zeile steht dann an erster Stelle. Aber der Name ist maßgebend und was danach kommt wird die ganze Zeile gelöscht.
Gruß Arend
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 16:56:59
trader-hawk
Hallo Herbert,
wow es funktioniert. Danke das Du Dir diesen Aufwand gemacht hast. Finde ich einfach nur Klasse. Und auch Super das Du die Formeln beschriftet hast.
1. Die Buttons verschwinden und wenn ich die Excel dann speichere kommen sie auch nicht wieder. Aber das ist egal da ich die Buttons nicht brauche. Die Makros sind ja da.
2. Auch wenn ich auf 2 entfernen gehe, bleibt beim allerersten Wert 3 stehen. Aber auch das ist nicht schlimm da ich diese einzelne Zeile von Hand löschen kann.
Wichtige Frage da ich noch weitere Formeln in Spalten einfüge. Ich sah das Du in Spalte G eine Berechnung machst. Das bedeutet das ich die Spalte G nicht benutzen darf, richtig?
Gruß Arend
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 17:16:17
Herbert_Grom
Hallo Arend,
du schreibst: Das bedeutet das ich die Spalte G nicht benutzen darf, richtig?. Eigentlich richtig, da in deiner Beispiel-AM in G keine Daten waren. Du siehst, es ist immer wichtig, die B-AM immer genau dem Original-Layout anzugleichen, mit allen Überschriften etc. Falls du die Spalte G brauchst, können wir auch eine andere nehmen, die nicht verwendet wird. Falls ja, dann sag mir in welche Spalte/n ich die Hilfsspalte legen kann.
Servus
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 17:28:56
trader-hawk
Hallo Herbert,
es ist richtig das es eine Beispielmappe war da ich momentan noch selber nicht weis wieviel Spalten ich noch benötige, da ich auch noch einen Abgleich mit einem anderen Arbeitsblatt machen muss usw.
Wenn ich aber ab H weitermachen würde, ginge das oder werden dann die Spalten ab G nicht mehr sortiert? Wenn es ginge wäre es kein Problem - geht es nicht ist die Frage ob Deine Hilfsspalte immer die letzte sein muss oder ob sie auch z.b. auf Z stehen könnte?
Aber ich könnte es doch auch selber machen oder. Überall wo Du G stehen hast könnte ich durch eine andere Spalte ersetzen. Oder sehe ich das falsch.
Gruß Arend
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 17:57:00
Herbert_Grom
Dann sollte ich erst einmal wissen, was in deiner Spalte G jetzt steht, denn das würde alles mit sortiert werden und evtl. darin vorh. Formeln werden in Werte umgewandelt. Am besten wäre, du schickst mir eine Beispiel-AM die genau so aussieht, wie das Original, also mit allen beslegten Zeilen und Spalten!
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 18:17:27
trader-hawk
Noch steht nichts in Spalte G. Ich werde nur noch weitere Spalten benötigen die ich aber auch ab H anbringen kann. Die Spalte G könnte ich frei lassen wenn alles was nach G kommt auch sortiert wird, ist es kein Problem. Und wie gesagt könnte ich doch auch das G in Deiner Formel einfach ändern oder nicht?
Gruß Arend
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 17:55:46
trader-hawk
Noch eine andere Frage. Ich sah gerade das Du auf Spalte F zugreifst. Da steht ja der gekürzte Name drin aber die sortierung ist ja B,E,D. Was machst Du mit dieser Spalte F?
Gruß Arend
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 17:58:29
Herbert_Grom
Was steht da, wo ich auf die Spalte F zugreife?
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 18:14:00
trader-hawk
Columns("F:F").EntireColumn.AutoFit
.Offset(1, 6).FormulaLocal = "=WENN(F2<>F1;1;WENN(G1="""";"""";WENN(G1+1>2;"""";G1+1)))"
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 18:20:42
Herbert_Grom
Und was könnte das nun bedeuten: Columns("F:F").EntireColumn.AutoFit? Das bedeutet, dass die Spalte F auf die maximal benötigte Breite erweitert wird!
Und was steht über der 2. Zeile? Richtig, "Rangliste erstellen"! Alles klar?
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
06.05.2021 18:54:47
trader-hawk
Herbert es funktioniert. Habe gerade ab Spalte H (G lies ich frei) weitere Daten eingegeben und alles wird mit sortiert. Problem gelöst. Spalte G lasse ich einfach frei.
Nochmal herzlichen Dank für Deine Hilfe.
Gruß Arend
AW: Bitte sehr & danke für die Rückmeldung!
07.05.2021 09:08:56
Herbert_Grom
Hallo Arend,
du solltest nur noch im Makro "Die_ersten_2_behalten" in der Zeile 40 folgendes ändern:
von so:

Range("$G$4:$G$" & lLastRow).EntireRow.Delete
nach so:

Range("$G$3:$G$" & lLastRow).EntireRow.Delete
Dann brauchst du 3. Zeile nicht mehr manuell zu löschen!
Servus
Anzeige
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 17:26:06
Herbert_Grom
Sorry, ich habe den 2. & 3. Wert vergessen! Ich schau mir das morgen noch mal an!
Servus
AW: Makro Duplikate bis auf 2 entfernen
04.05.2021 17:31:17
Herbert_Grom
Du schreibst: "die ersten 2 oder auch 3". Von welcher Spalte? Euro oder %?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige