Sub SAVEFACTURE()
Dim TDF(), TH(1 To 1, 1 To 5), L&, LOt As ListObject
TDF = Sheet1.[A1:J23].Value
For L = 10 To Sheet1.[I21].End(xlUp).Row
If TDF(L, 9) > TDF(L, 10) Then
Application.Goto Sheet1.Cells(L, "I")
MsgBox ActiveCell.Address & ": Qté " & TDF(L, 9) & " dépasse de " & TDF(L, 9) - TDF(L, 10) _
& " stock " & TDF(L, 10), vbExclamation, "Sauvegarde"
Exit Sub: End If: Next L
Set LOt = Sheet4.ListObjects(1)
TH(1, 1) = WorksheetFunction.Max(LOt.ListColumns("N° Facture").DataBodyRange) + 1
TH(1, 2) = TDF(1, 1)
TH(1, 3) = TDF(1, 4)
TH(1, 4) = TDF(23, 7)
TH(1,5)= ? ' pas compris ce que vous vouliez y mettre
LOt.ListRows.Add(1).Range.Value = TH
LOt.ListRows(1).Range.Interior.ColorIndex = xlNone
End Sub