Option Explicit
Sub Grouper()
Dim RDon As Range, TEntrée(), Le&, LeDéb&, TSortie(), Ls&, C As Byte
With Feuil1.UsedRange: Set RDon = .Rows(2).Resize(.Rows.Count - 1): End With
TEntrée = RDon.Value
ReDim TSortie(1 To UBound(TEntrée, 1), 1 To UBound(TEntrée, 2))
Le = 1
Do While Le <= UBound(TEntrée, 1)
LeDéb = Le
Do: Le = Le + 1: If Le > UBound(TEntrée, 1) Then Exit Do
If TEntrée(Le, 1) <> TEntrée(LeDéb, 1) Or TEntrée(Le, 2) <> TEntrée(LeDéb, 2) Then Exit Do
TEntrée(LeDéb, 3) = TEntrée(LeDéb, 3) + TEntrée(Le, 3): Loop
If TEntrée(LeDéb, 3) <> 0 Then
Ls = Ls + 1
For C = 1 To 3: TSortie(Ls, C) = TEntrée(LeDéb, C): Next C
End If
Loop
RDon.Value = TSortie
End Sub