Sub test()
Dim tablo As Variant
Dim recherche As Variant
fintablo = Range("A" & Rows.Count).End(xlUp).Row
tablo = Range("A2:D" & fintablo).Value
finrecherche = Sheets("A compléter").Range("A" & Rows.Count).End(xlUp).Row
recherche = Sheets("A compléter").Range("A1:C" & finrecherche).Value
For i = LBound(tablo, 1) To UBound(tablo, 1)
For j = LBound(recherche, 1) To UBound(recherche, 1)
If tablo(i, 1) = recherche(j, 1) And recherche(j, 2) >= tablo(i, 2) And recherche(j, 2) <= tablo(i, 3) Then
recherche(j, 3) = recherche(j, 3) + tablo(i, 4)
End If
Next j
Next i
Sheets("A compléter").Range("A1:C4").Value = recherche
End Sub