Sub Test()
Dim LOt As ListObject, TR(), SGrNum As SsGr, Détails, L As Long, TempsDernOp As Double, _
TempsPremOp As Double, SomTemps As Double, X As Double, Y As Double, XsY As Double
Set LOt = ActiveSheet.[A3].ListObject
ReDim TR(1 To LOt.ListRows.Count, 1 To 4)
For Each SGrNum In Gigogne(LOt, 2, Null, 1)
Détails = SGrNum.DonnéesFin: TempsDernOp = Détails(3)
Détails = SGrNum.DonnéesDébut: TempsPremOp = Détails(3)
SomTemps = SGrNum.Somme(3)
X = SomTemps - TempsDernOp
Y = SomTemps - TempsPremOp
If Y <> 0 Then XsY = X / Y Else XsY = 1
For Each Détails In SGrNum.Co
L = L + 1
TR(L, 1) = Détails(1)
TR(L, 2) = SGrNum.Id
TR(L, 3) = Détails(3)
TR(L, 4) = XsY
Next Détails, SGrNum
LOt.ListColumns("Numéros").DataBodyRange.NumberFormat = "@"
LOt.DataBodyRange.Resize(, 3).Value = TR
End Sub