Sub Recap()
Dim T, c As Range, n As Long, i As Long
[Dates].Parent.Activate 'sécurité
On Error Resume Next 'si une date n'existe pas dans le récapitulatif
[Dates].Offset(, 1).ClearContents 'RAZ
T = [Dates].Offset(, 1) 'tableau, plus rapide
For Each c In Range("A3", Cells(Rows.Count, 1).End(xlUp))
If IsDate(c) Then
n = Int(Val(c(1, 2).Text))
i = 0
i = Application.Match(c, [Dates], 0)
If n * i > 0 Then
For i = i To i + n - 1
T(i, 1) = T(i, 1) + 1
Next
End If
End If
Next
[Dates].Offset(, 1) = T
End Sub