Bonsoir,
Dans le module de la feuille :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Me.Range("B3:B11")) Is Nothing Then
Target.Offset(, 2).Interior.Color = Target.Interior.Color
Me.Calculate
End If
End Sub
Dans un module Standard :
Function SOMROUGE(plg As Range)
Dim S, c As Range
Application.Volatile
For Each c In plg
If c.Interior.Color = vbRed Then
If IsNumeric(c) Then S = S + c.Value
End If
Next c
SOMROUGE = S
End Function
Fonction utilisée en D15.
Cordialement.
NB- En l'état, si tu changes une couleur, il faut ensuite revenir sur la cellule modifiée pour déclencher la mise à jour.
Un changement de couleur ne déclenchant en lui-même aucun évènement.