Private Sub Worksheet_Change(ByVal Target As Range)
Dim xcell
On Error GoTo err001
If Not Intersect(Target, Columns(1)) Is Nothing Then
Application.EnableEvents = False
For Each xcell In Intersect(Target, Columns(1))
If xcell.Row Mod 2 = 0 Then
If IsNumeric(xcell) Then
If xcell > 0 Then
Range(Cells(xcell.Row, "c"), Cells(xcell.Row, Columns.Count)).ClearContents
Cells(xcell.Row, "c").Resize(, xcell) = "DO"
Cells(xcell.Row, "c").Offset(, xcell).Resize(, 3) = "SL"
End If: End If: End If
Next xcell
End If
err001:
Application.EnableEvents = True
If Err Then MsgBox "Erreur: " & Err.Description
End Sub