Supprimer les doublons dans une colonne dans excel 2003 vba

Bien la question est, j'ai une colonne, par exemple, la colonne Y a de nombreuses entrées, près de 40 000, et qu'Il augmente everyweek. Le truc c'est que je dois vérifier les doublons dans Y de la colonne et de supprimer la ligne entière. Ainsi, la colonne doit Y avoir seulement les entrées uniques.

Supposons que j'ai de 3000 entrées et après 1 semaine, je vais avoir environ 3 500 entrées. Maintenant, je dois vérifier ces nouvellement ajouté 500 columnn les valeurs ne sont pas les 3500 avec l'ancien + nouveau je.e de 3 500 entrées et de supprimer la copie de la ligne. Le vieux de 3 000 ne devrait pas être modifié ou supprimé. J'ai trouvé des macros, mais ils ne l'astuce pour l'ensemble de la colonne. Je voudrais filtre de la nouvelle 500 les valeurs.

 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

Je sais qu'il faut utiliser countif pour les entrées en double. Mais ce que Iam à faire est d'appliquer la formule, puis rechercher des erreurs de saisie, puis le supprimer. Je trouve que l'application de la formule et de trouver de faux, puis à la suppression de son peu de temps.

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 

C'est ce que j'ai trouvé sur google, mais je ne sais pas où est l'erreur. C'est la suppression de toutes les colonnes si j'ai mis

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

Toutes les modifications doivent être faites pour ces fonction? ou sugest moi rien de bon de la fonction qui m'aide. Vérification de la copie des valeurs d'une colonne sélectionnée gamme de l'ensemble de la colonne. Je veux dire vérifier 500 entrées des valeurs de la colonne avec le 3500 colonne de valeurs d'entrée et de supprimer les doublons dans 500 entrées

Merci d'avance

  • Vous vous demandez pourquoi tout le monde vous donne pertinence des réponses? Est-il possible qu'ils sont induits en erreur par votre question parce qu'il est obscur et déroutant? Au lieu de menacer tout le monde avec "-1", pourquoi ne pas vous rendre à votre question plus claire et plus concise, et ainsi aider ceux qui essaient de vous aider.
InformationsquelleAutor niko | 2011-08-24