Public Sub CalculTaux()
Dim nbArticlesOnglet1 As Long, nbArticlesOnglet2 As Long, iL As Long, taux As Double
'# calculer le nombre d'article sur l'onglet 1
With ThisWorkbook.Sheets("Onglet 1")
'boucler sur toutes les lignes (de 6 à la dernière saisie)
For iL = 6 To .Range("D" & .Rows.Count).End(xlUp).Row
'si c'est la permière occurence de l'article
If WorksheetFunction.CountIf(.Range("D6:D" & iL), .Range("D" & iL)) = 1 Then
'incrémenter le compteur
nbArticlesOnglet1 = nbArticlesOnglet1 + 1
End If
Next iL
End With
'# calculer le nombre d'article sur l'onglet 2
With ThisWorkbook.Sheets("Onglet 2")
'boucler sur toutes les lignes (de 6 à la dernière saisie)
For iL = 6 To .Range("B" & .Rows.Count).End(xlUp).Row
'si c'est la permière occurence de l'article
If WorksheetFunction.CountIf(.Range("B6:B" & iL), .Range("B" & iL)) = 1 Then
'incrémenter le compteur
nbArticlesOnglet2 = nbArticlesOnglet2 + 1
End If
Next iL
End With
'# calculer le taux
taux = nbArticlesOnglet2 / nbArticlesOnglet1
'# afficher le résultat
MsgBox "Le taux est de : " & Round(taux * 100, 2) & "%."
End Sub