bonjour à tous,
une correction
Private Sub Worksheet_Change(ByVal Target As Range)
If Selection.Count > 1 Then Exit Sub
If Target.Address = "$A$2" Then Exit Sub '<------ ajoute cette instruction
Application.EnableEvents = False
Target = Application.Proper(Target)
Application.EnableEvents = True
Dim Isect As Range, Plage, c, i
i = Range("j" & Rows.Count).End(xlUp).Row
Set Plage = Range("g1:g" & i & ",k1:k" & i & ",m1:m" & i)
Set Isect = Intersect(Target, Plage) 'ignorer les cellules modifiées qui ne sont pas "A"
If Isect Is Nothing Then Exit Sub
For Each c In Isect.Cells 'chaque cellule A modifiée
With c
If .Value <> 0 Then .Offset(, 1).Value = .Value
End With
Next
End Sub