Changement de couleur dès que le contenu change

Salut cher confrères,

Ok, alors…c’est parti

Voilà, problème tout simple. J’ai un chiffre dans une cellule, peut importe la cellule et le chiffre on s’en fou.

Je voudrais que la cellule devienne rouge chaque fois que le chiffre dans cette cellule change.

Merci par avance!

Bonjour,

une macro événementielle à mettre dans le module de la feuille souhaitée

Private Sub Worksheet_Change(ByVal Target As Range)
Target.Interior.Color = vbRed
End Sub

Ok....

pas mal H2s04, cette macro permet de voir si quelque chose a bouger dans une feuille. Mais comment adapter la maccro à une seule cellule? prenons par exemple B3.

merci bien!

re-bonjour

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$3" then
Target.Interior.Color = vbRed
End If
End Sub

Ok encore merci H2s04,

cela peut me convenir en l'état, mais le must serait que la cellule redevienne normalement à la fermeture,

et que la mise en rouge ne s'effectue que si le chiffre qui change n'est pas compris entre -0,5 et 0,5

re-Bonjour,

à mettre dans le module de la feuille souhaitée

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$3" then
if target<-.5 or target>.5 then
Target.Interior.Color = vbRed
End If
end if
End Sub

à mettre dans le module du classeur

Private Sub Workbook_BeforeClose(Cancel As Boolean)

sheets("feuil1").Range("B3").Interior.Color = vbWhite ' adapter le nom de la feuille feuil1 par le nom de la feuille souhaitée

End Sub

Ok ça marche bien! mais du coup ça peux pas marcher si B3 est une cellule calculée apparement?

salutations

code à mettre dans le module du classeur

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Sheets("feuil1").Range("B3").Interior.Pattern = xlNone
End Sub

Private Sub Workbook_Open()

old_value = Sheets("feuil1").Range("B3")
End Sub

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)

If Abs(Sheets("Feuil1").Range("B3") - old_value) > 0.5 Then Sheets("Feuil1").Range("B3").Interior.Color = vbRed
End Sub

code à mettre dans un nouveau module

Public old_value

Ok nickel, par contre il faudrait que cela revienne à un format de cellule normale si la cellule reviens à 0

re

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
    If Sheets("Feuil1").Range("B3") = 0 Then
        Sheets("Feuil1").Range("B3").Interior.Pattern = xlNone
        old_value = 0
    ElseIf Abs(Sheets("Feuil1").Range("B3") - old_value) > 0.5 Then
        Sheets("Feuil1").Range("B3").Interior.Color = vbRed
    Else
    End If
End Sub

comme on dit dans teken: PERFECT!

Ok, PERFECT! merci

Rechercher des sujets similaires à "changement couleur que contenu change"