Dim TEST As Boolean 'déclare la variable TEST
Private Sub Worksheet_Change(ByVal Target As Range) 'au changement dans l'onglet
'si la cellule modifiée n'est pas G6 ou L6 sort de la procédure
If Not Application.Intersect(Target, Range("G6"), Range("L6")) Is Nothing Then Exit Sub
If TEST = True Then Exit Sub 'si TEST est [Vrai], sort de la procédure
If Target.Address = "$G$6" Or Target.Address = "$L$6" Then TEST = True 'si la cellule modifié est G6 ou L6 alors TEST devient [Vrai]
'si la cellule modifié est G6, L6 prend la valeur de la cellule modifié, TEST devient [Faux], sort de la procédure
If Target.Address = "$G$6" Then Range("L6") = Target.Value: TEST = False: Exit Sub
'si la cellule modifié est L6, G6 prend la valeur de la cellule modifié, TEST devient [Faux]
If Target.Address = "$L$6" Then Range("G6") = Target.Value: TEST = False
End Sub