Public Sub Recap()
Dim MaDate As Date, Ws As Worksheet, L As Long, j As Long, C As Long, b(), i As Long, x As Boolean
Dim a()
a = Array("C", "E", "R", "S")
MaDate = Feuil1.Range("A2"): Feuil1.Range("C1:P10000").ClearContents
Set Ws = Worksheets(CStr(Year(MaDate)))
L = Ws.Range("A65536").End(xlUp).Row
tbl = Ws.Range("A1:OY" & L)
Col = 3
For C = 16 To UBound(tbl, 2)'cherche date
If tbl(6, C) = MaDate Then Exit For
Next C
For j = 0 To UBound(a)
ReDim Preserve b(0 To 2, 0 To i)
For L = 8 To UBound(tbl, 1)
x = False
If tbl(L, C) = a(j) Then'cherche c,e,r,s
b(0, i) = tbl(L, 2)
b(1, i) = tbl(L, 3)
b(2, i) = b(2, i) + 1
x = True
End If
If x Then i = i + 1: ReDim Preserve b(0 To 2, 0 To i)
Next L
If i > 0 Then'peut être prévoir le case si le tableau b n'a qu'une ligne
b = Application.Transpose(b)
Feuil1.Cells(1, Col) = a(j)
Feuil1.Cells(2, Col).Resize(UBound(b, 1), UBound(b, 2)) = b: Erase b: i = 0
Col = Col + 4
End If
Next j
End Sub