1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Sub essai()
Dim Dl As Range, Plg As Range, Tbl, Tbresult(), Tbdoublon
Dim x As Long
With Sheets("Feuil2") 'à changer par ton nom de feuille
Set Dl = .Range("C" & .Rows.Count).End(xlUp) 'derniere cellule utilisée en col C
Set Plg = .Range("C2", Dl(1, 2))
Tbl = .Range("D2", Dl(1, 2))
.Range("D2", Dl(1, 2)).RemoveDuplicates Columns:=1, Header:=xlNo
Set Dl = .Range("D" & .Rows.Count).End(xlUp)
Tbdoublon = .Range("D2", Dl)
.Range("D2").Resize(UBound(Tbl)) = Tbl
ReDim Tbresult(1 To UBound(Tbdoublon), 1 To 2)
For x = 1 To UBound(Tbdoublon)
Tbresult(x, 1) = Tbdoublon(x, 1)
Tbresult(x, 2) = WorksheetFunction.SumIf(Plg.Columns(2), Tbdoublon(x, 1), Plg.Columns(1))
Next
Sheets("Feuil3").Range("A2").Resize(UBound(Tbresult, 1), UBound(Tbresult, 2)) = Tbresult
End With
End Sub |
Partager