VBA : compter le nombre de lignes sans doublon

Bonjour,

Comment compter le nombre de lignes sans doublon dans l'exemple ci-joint ?

Merci encore pour votre aide !

Pour le coup, je ne trouve que des réponses via des formules...

62compteur.xlsm (15.35 Ko)

Par formule :

{=SOMME(1/NB.SI($A$2:$A$9;$A$2:$A$9))}

Formule à valider par Ctrl + Maj + Entrée

Sinon, par VBA, voir le fichier joint.

82compteur.xlsm (23.55 Ko)

Impec', merci. C'est bien par VBA qu'il me fallait la solution.

Où est-ce que tu définis le numéro de la colonne ?

Car dans mon fichier réel, il y a des données de A à C et le comptage doit se faire sur la colonne J.

EDIT, trouvé :

J = 10e colonne

Set s1 = Sheets("Compt")
derligS1 = s1.Cells(Rows.Count, 10).End(xlUp).Row
nombre = 0

For i = 2 To derligS1
    nombre = nombre + 1 / (WorksheetFunction.CountIf(s1.Range(s1.Cells(2, 10), s1.Cells(derligS1, 10)), s1.Cells(i, 10)))
Next

MsgBox "Le nombre sans doublon est : " & nombre
Private Sub CommandButton1_Click()
Set s1 = Sheets("Compt")
derligS1 = s1.Cells(Rows.Count, 1).End(xlUp).Row
nombre = 0

For i = 2 To derligS1
    nombre = nombre + 1 / (WorksheetFunction.CountIf(s1.Range(s1.Cells(2, 1), s1.Cells(derligS1, 1)), s1.Cells(i, 1)))
Next

MsgBox "Le nombre sans doublon est : " & nombre

End Sub

Change les 1 (colonne A) par 10 (colonne J) dans la ligne suivante :

nombre = nombre + 1 / (WorksheetFunction.CountIf(s1.Range(s1.Cells(2, 1), s1.Cells(derligS1, 1)), s1.Cells(i, 1)))

Rechercher des sujets similaires à "vba compter nombre lignes doublon"