Salut Jmd,
Effectivement la demande est bizarre, mais en tout cas elle a était pour moi l'occasion de me creuser les méninges pour faire ce code :
Option Base 1
Sub traitement2_tab()
Dim tableau
Dim tab_result
Dim i As Integer
derlgn = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Range("D2:F" & derlgn).ClearContents
tableau = ActiveSheet.Range("B2:B" & derlgn)
ReDim tab_result(UBound(tableau, 1), 2)
For i = 1 To UBound(tableau, 1) - 1
If Not IsNumeric(tableau(i, 1)) Then
tab_result(i, 1) = tableau(i, 1)
somme = 0
j = i + 1
Do While IsNumeric(tableau(j, 1))
tab_result(j, 1) = tableau(j, 1)
tab_result(j, 2) = tableau(i, 1)
somme = somme + tableau(j, 1)
If j = UBound(tableau, 1) Then Exit Do
j = j + 1
Loop
tab_result(i, 2) = somme
End If
Next i
ActiveSheet.Range("D2").Resize(UBound(tab_result, 1), UBound(tab_result, 2)) = tab_result
End Sub
J'imagine qu'une autre solution plus courte et certainement plus simple existe