[Excel]Makro Doppeleinträge löschen

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Buzzer, 16. Mai 2008 .

Schlagworte:
  1. 16. Mai 2008
    Hallo liebe Experten

    ich habe ein makro mit dem ich aus einer Kundenliste, auf Basis der Kundennummer, doppelte Einträge löschen lassen kann.

    d.h. Ist eine Kundennummer mehr als 1 mal vorhanden werden alle zusätzlichen Einträge gelöscht. Einer jedoch bleibt übrig.

    Code:
    Sub Duplikate_finden_und_loeschen()
     Dim iRow As Integer, iRowL As Integer
     iRowL = Cells(Cells.Rows.Count, 1).End(xlUp).Row
     For iRow = iRowL To 1 Step -1
     If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) > 1 Then
     Rows(iRow).Delete
     End If
     Next iRow
    End Sub
    
    Nun brauche ich das Makro aber etwas anders. Ich möchte das es diesmal nachschaut ob ein Kunde mehrfach in der Liste ist und dann alle Einträge von diesem kunden löscht.

    So das der Kunde komplett aus der Datei verschwindet.

    Ich habe ehrlich gesagt null Ahnung wie ichs ändern soll. Ich vermute aber mal das ganze liegt an dieser Zeile:
    Code:
     If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) > 1 Then
     Rows(iRow).Delete
    
    Für jede Hilfe gibbet BW´s

    Vieleicht kann mir auch jemand die einzelnen Befehle/Bedeutungen kurz erklären, dann versteh ich sowas evtl. besser
     
  2. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Moved to Programmierung da es auf einer VB basisi beruht

    Gruß BenQ
     
  3. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Wusst ich nicht , danke.

    Wie gesagt null Ahnung
     
  4. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    ich denke dass diese zeile dafür verantwortlich ist. Es wird der Eintrag so lange gelöscht, bis er nur noch 1 mal vorhanden ist ("... > 1"). änder diesen Wert mal in 0 ab, also "... > 0". Das könnte schon die Lösung sein.

    mfg flohmaster
     
  5. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Nein das klappt leide nicht. BW haste aber trotzdem.

    Meines Wissens nach ist dieser Wert dafür Verantwortlich:

    Wenn ein Eintrag vorhanden ist desssen anzahl >(größer als) 1 ist dann löschen!

    Eine Änderung auff den Wert 0 sorgt für eine komplette löschung der einträge. Da ja jeder Eintrag öffter als "0" vorhanden ist.
     
  6. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    hmm ok stimmt ... dann lass doch erst den eintrag auf 1 reduzieren und danach suchst du den eintrag speziell nach dem namen und löscht ihn dann noch einmal
     
  7. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Naja bei einer datenbank mit 6000 einträgen sehr aufwendig.

    Ich weis ja nicht welche doppelt sind und gelöscht wurden.
     
  8. 16. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Bitte:
    Code:
    Sub Duplikate_finden_und_loeschen()
     Dim iRow As Integer, iRowL As Integer, i As Integer, Text As String
    
     iRowL = Cells(Cells.Rows.Count, 1).End(xlUp).Row
     For iRow = iRowL To 1 Step -1
     If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) > 1 Then
     Text = Cells(iRow, 1)
     For i = iRowL To 1 Step -1
     If (Text = Cells(i, 1)) Then
     Rows(i).Delete
     End If
     Next i
     End If
     Next
    End Sub
    
    Müsste funktionieren.

    Mfg Rushh0ur
     
  9. 19. Mai 2008
    AW: [Excel]Makro Doppeleinträge löschen

    Super hat einwadnfrei geklappt.

    Wenn sich noch jemand ne BW verdienen will kann er mir gerne erklären was was in dem Makro bedeutet, damit ich ein besseres verständniss für die dinger bekomme

    Ansonsten sind alle BW´s raus
     
  10. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.