Supportnet / Forum / Tabellenkalkulation
Doppelte Werte per VBA Filtern
Frage
Hi!
Möchte gerne in der Tabelle ABM in der Spalte A11:A250 und die entprechenden Werte die daneben in B11:A250 stehen und auch passend zur Nummer in Spalte A auch doppelt sind per VBA Befehl löschen. Ich weis das dies auch per Advanced Filter möglich ist, aber dies funktioniert nicht richtig und außerdem will ich das Makro in ein Modul einbauen.
Danke im Voraus
Gruß AF
Antwort 1 von coros
Hallo VBA_Anfänger,
mit nachfolgendem Makro sollte das funktionieren, was Du Dir vorgestellt hast. Kopiere nachfolgendes Makro in ein StandardModul und starte es über eine Befehlsschaltfläche.
Hier wird in Spalte A nach doppelten Werten gesucht. Werden welche gefunden, werden diese gelöscht.
Ich hoffe, Du kommst klar. Bei Fragen melde Dich wieder.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
mit nachfolgendem Makro sollte das funktionieren, was Du Dir vorgestellt hast. Kopiere nachfolgendes Makro in ein StandardModul und starte es über eine Befehlsschaltfläche.
Option Explicit
Sub Löschen()
Dim i1 As Integer, i2 As Integer
Application.ScreenUpdating = False
For i1 = 11 To 250
For i2 = i1 + 1 To 250
If Cells(i1, 1) = Cells(i2, 1) Then _
Rows(i2).ClearContents
Next
Next
End SubHier wird in Spalte A nach doppelten Werten gesucht. Werden welche gefunden, werden diese gelöscht.
Ich hoffe, Du kommst klar. Bei Fragen melde Dich wieder.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von VBA_Anfänger
Danke funktioniert, aber wie kann man die nun freibleibenden Zellen gleich mitlöschen?
Danke im Voraus
AF
Danke im Voraus
AF
Antwort 3 von coros
Hallo VBA_Anfänger,
von Löschen der Leerzellen stand nichts in Deiner Frage. Du fragst doch hier nicht zum ersten Mal. Da müsstest Du doch mittlerweile mitbekommen haben, so genauer die Beschreibung, desto genauer die Lösung.
Nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast.
Tausche es gegen das Alte aus.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
von Löschen der Leerzellen stand nichts in Deiner Frage. Du fragst doch hier nicht zum ersten Mal. Da müsstest Du doch mittlerweile mitbekommen haben, so genauer die Beschreibung, desto genauer die Lösung.
Nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast.
Option Explicit
Sub Löschen()
Dim i1 As Integer, i2 As Integer
Application.ScreenUpdating = False
For i1 = 11 To 250
For i2 = i1 + 1 To 250
If Cells(i1, 1) = Cells(i2, 1) Then _
Rows(i2).ClearContents
Next
Next
Range("A11:A250").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End SubTausche es gegen das Alte aus.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 4 von VBA_Anfänger
Hi!
Danke funktioniert, aber dauert leider ewig weil es ein paar hundert Nummern sind. Gibt es auch eine Möglichkeit das ganze zu optimieren?
Gruß AF
Danke funktioniert, aber dauert leider ewig weil es ein paar hundert Nummern sind. Gibt es auch eine Möglichkeit das ganze zu optimieren?
Gruß AF
Antwort 5 von nighty
hi all :)
die findmethode wuerde sich hier anbieten um eine verschachtelung zu vermeiden.hatte vor kurzem erst ein beispiel gebracht.
gruss nighty
die findmethode wuerde sich hier anbieten um eine verschachtelung zu vermeiden.hatte vor kurzem erst ein beispiel gebracht.
gruss nighty

