Trouver un doublon dans une colonne excel

Fermé
marianne84 Messages postés 9 Date d'inscription mardi 29 septembre 2009 Statut Membre Dernière intervention 21 octobre 2009 - 12 oct. 2009 à 18:24
Bonjour,
Je voudrais savoir comment écrire la procédure VBA qui permet de trouver une valeur inscrite en double voire en triple dans une colonne.
Le but c'est d'abord de trouver la même valeur plusieurs fois puis de mettre en gris les lignes correspondante
Le code ci dessous marche lorsque je choisis une valeur précise en double( ex: valeur de la cellule A4) il met en gris les lignes où il a répéré deux fois la même valeur
Le problème c'est que l'intégration à une boucle ne marche pas, il me met "Erreur d'exécution 91 _variable objet ou variable de bloc with non définie"
C'est la partie en gras qui buggue

Ya t-il une possibilité de déclarer les variable autre que Variant pour des lignes? Sil ya une autre méthode je suis preneuse.

CODE
sub test
Dim ligne1 As Variant
Dim ligne2 As Variant
nb_lig = Range(Range("A3"), Range("A3").End(xlDown)).Rows.Count 'les valeurs commencent dans la cell A3

Columns("A:A").Select
For i = 3 To nb_lig

ligne1 = Selection.Find(What:=Cells(i, 1).Value, After:=ActiveCell, LookIn _ 'cè là kil y a 1 bug
:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False).Row

Columns("A:A").Select
Selection.Find(What:=Cells(i, 1).Value, After:=ActiveCell, LookIn _
:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False).Activate

ligne2 = Selection.FindNext(After:=ActiveCell).Row
If ligne1 <> ligne2 Then Range("A" & i).EntireRow.Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
Rows(ligne2).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid

Next i
End If
End Sub


MERCI
A voir également: