Private Sub Worksheet_Change(ByVal Target As Range)
Dim lig%, nblig%, i As Byte
ActiveSheet.Unprotect
If Not Intersect(Target, Range("B5:B500")) Is Nothing Then Target = UCase(Target)
If Not Intersect(Target, Range("C5:C500")) Is Nothing Then Target = LCase(Target)
If Not Intersect(Target, Range("D5:D500")) Is Nothing Then Target = UCase(Target)
If Target.Column = 13 And UCase(Target) = "X" Then
lig = Target.Row
With Sheets("Archives")
nblig = .Range("B65535").End(xlUp).Row + 1
For i = 2 To 14
.Cells(nblig, i).Value = Cells(lig, i).Value
Next i
.Cells(nblig, 1) = Now 'je suppose !
End With
Application.EnableEvents = False
Rows(lig).EntireRow.Delete
Application.EnableEvents = True
End If
ActiveSheet.Protect
End Sub