Sub Decompte()
Dim d As Object, j%, tablo, ub&, resu%(), i&, n%
Set d = CreateObject("Scripting.Dictionary")
For j = 2 To 6: d(Cells(4, j).Value) = "": Next j 'liste sans doublon
With Range("A6", Range("F" & Rows.Count).End(xlUp)).Resize(, 6)
If .Row < 6 Then Exit Sub
tablo = .Value 'matrice, plus rapide
ub = UBound(tablo)
ReDim resu(1 To ub, 1 To 1)
For i = 1 To ub
n = 0
For j = 1 To 6
If d.exists(tablo(i, j)) Then n = n + 1
Next j
resu(i, 1) = n
Next i
'---restitution---
.Columns(1) = resu
.Rows(1).Offset(ub).Resize(Rows.Count - ub - .Row + 1).ClearContents 'RAZ en...