Sub test()
Dim i As Long, Nb As Long, NbCol As Long
With ActiveSheet
NbCol = .UsedRange.Columns.Count
i = 4
Do Until UCase(.Cells(i, 1).Value) = "FIN"
Nb = .Cells(i, 2).Value
If Nb > 0 Then
.Range(.Cells(i + 2, 1), .Cells(i + 2 + Nb - 1, 1)).EntireRow.Insert
.Range(.Cells(i + 1, 1), .Cells(i + 1, NbCol)).AutoFill Destination:=.Range(.Cells(i + 1, 1), .Cells(i + 2 + Nb - 1, NbCol))
i = i + Nb + 1
ElseIf Nb < 0 Then
.Range(.Cells(i + 1, 1), .Cells(i - Nb, 1)).EntireRow.Delete
End If
i = i + 1
Loop
End With
End Sub