XL 2016 Adaptation Private Sub Worksheet_Change

Nico_J

XLDnaute Occasionnel
Supporter XLD
Bonjour à tous,

j'ai un petit souci, je n'arrive pas à adapter un code dans
VB:
Private Sub Worksheet_Change

Code:
Sub SommeTextCouleurRouge()
Set PlageTest = Range("A1:B15")
    For Each Cell In PlageTest
        If Cell.Interior.ColorIndex = 3 Then
            total = total + Cell.Value
        End If
    Next
Range("C1").Value = total
End Sub

Cela ne doit pas être sorcier mais je suis un peu perdu depuis le temps
Merci
 
Dernière édition:
Solution
Bonjour Nico,
un essai en PJ avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:B15")) Is Nothing Then
        Set PlageTest = Range("A1:B15")
        For Each Cell In PlageTest
            If Cell.Interior.Color = vbRed Then
                Total = Total + Cell.Value
            End If
        Next
        Range("C1").Value = Total
    End If
Fin:
End Sub
Attention ça ne marche pas si la couleur de la cellule est faite par MFC. Dans ce cas ce serait beaucoup plus compliqué.

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Nico,
un essai en PJ avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A1:B15")) Is Nothing Then
        Set PlageTest = Range("A1:B15")
        For Each Cell In PlageTest
            If Cell.Interior.Color = vbRed Then
                Total = Total + Cell.Value
            End If
        Next
        Range("C1").Value = Total
    End If
Fin:
End Sub
Attention ça ne marche pas si la couleur de la cellule est faite par MFC. Dans ce cas ce serait beaucoup plus compliqué.
 

Pièces jointes

  • Nico.xlsm
    13.8 KB · Affichages: 18

Discussions similaires

Réponses
21
Affichages
280
Réponses
1
Affichages
240
Réponses
2
Affichages
122
Réponses
1
Affichages
164

Statistiques des forums

Discussions
312 176
Messages
2 085 955
Membres
103 059
dernier inscrit
gib17