Löschen Sie doppelte Einträge in einer Spalte in excel 2003 vba

Gut die Frage ist, ich habe eine Spalte, zum Beispiel die Y-Spalte viele Einträge in der es, fast 40.000 und Es erhöht everyweek. Die Sache ist, ich habe zu prüfen, Duplikate in Y-Spalte, und löschen Sie die ganze Zeile. Also, Y-Spalte nur eindeutige Einträge.

Angenommen ich habe 3.000 Einträge und nach 1 Woche werde ich mit etwa 3.500 Einträgen. Jetzt habe ich zu prüfen, diese neu hinzugefügten 500 columnn Werte nicht den 3.500 mit dem alten + dem neuen ich.e von 3.500 Einträge und löschen der duplizierten Zeile. Die alten, die 3000 sollten nicht gelöscht oder geändert werden. Ich habe festgestellt Makros, aber Sie tun den trick für die gesamte Spalte. Ich würde gerne filter die neue 500-Werte.

 Cells(2, "Q").Formula = "=COUNTIF(P$1:P1,P2)=0"   'I have used these formula 
 Range("Q2").Copy Destination:=Range("Q3:Q40109")  'it gives false for the duplicate values

Ich weiß, haben wir die Verwendung countif für die doppelten Einträge. Aber was Iam tun, ist die Formel anwenden und dann die Suche nach falschen Einträgen und löschen Sie Sie dann. Ich glaub die Anwendung der Formel und die Suche nach falschen und dann löschen wenig zeitaufwendig.

Sub DeleteDups() 
Dim x               As Long 
Dim LastRow         As Long 
LastRow = Range("A65536").End(xlUp).Row 
For x = LastRow To 1 Step -1 
    If Application.WorksheetFunction.CountIf(Range("A1:A" & x), Range("A" & x).Text) > 1 Then 
        Range("A" & x).EntireRow.Delete 
    End If 
Next x   
End Sub 

Dies ist, was ich bei google gefunden, aber ich weiß nicht wo der Fehler ist. Es ist das löschen aller Spalten, wenn ich

For x = LastRow To 1 Step -1 
For x = LastRow to step 3000 ' It is deleting all 500 columns but if it is -1 working fine

Änderungen gemacht werden müssen für diese Funktion? oder sugest mir gute Funktion, die mir hilft. Überprüfen Sie für die doppelten Werte einer ausgewählten Bereich Spalte von der gesamten Spalte. Ich meine Scheck über 500 Einträge-Spalte Werte mit den 3500 Spalte entry-Werte und löschen Sie die Duplikate in 500 Einträge

Vielen Dank im Voraus

  • Überhaupt sich Wundern, warum jeder gibt Sie irrelevante Antworten? Ist es möglich, dass Sie in die Irre geführt durch Ihre Frage, denn Sie ist unklar und verwirrend? Statt bedrohen jeden mit "-1", warum nicht Sie stellen Sie Ihre Frage klarer und übersichtlicher und damit helfen, diejenigen, die versuchen, Ihnen zu helfen.
InformationsquelleAutor niko | 2011-08-24
Schreibe einen Kommentar