Salut,
C’est une macro événementielle qui est placé dans le code de la feuille (entouré en rouge ci-dessous).
A chaque modification de la feuille (Worksheet_Change) la macro démarre.
Par cette ligne If Not Application.Intersect(Target, Range("B4:B6")) Is Nothing Then, le code ne traite que les modifications des cellules B4 à B6.
Dans un tel cas, on contrôle si la couleur du texte de la cellule modifiée (Target) est vert par l’instruction If Target.Font.Color = RGB(112, 173, 71) Then. Attention, ça correspond à un vert extrêmement précis !
Si c’est bien le cas, on multiplie la cellule immédiatement à droite de la cellule modifiée par l’instruction Target.Offset(0, 1) = Target * -1 (ça multiplie la cellule modifiée par -1).
C’est un peu plus clair ?