colorer une cellule automatiquement

Océane1998

XLDnaute Nouveau
Bonjour,

J'ai un tableau de consommation d'eau sur excel 2013, je voudrai qu'à chaque fois que je change la date du relevé de compteur (colone B) celle-ci s'affiche en couleur automatiquement, mais qu'elle se remette en blanc lorsque j'ajoute une autre date en dessous (et donc que cette autre date se colore, etc). Sauriez-vous comment faire ?

Je vous remercie d'avance !
 

kan3pz

XLDnaute Occasionnel
Salut,

Un essai en PJ par MFC, si j'ai bien compris la problématique (il est plus facile de répondre a une demande avec un fichier exemple avec le résultat attendu).

A dispo,
 

Pièces jointes

  • Océane1998.xlsx
    10.6 KB · Affichages: 28

Lone-wolf

XLDnaute Barbatruc
Bonjour Océane, kane, le Forum :)

Une proposition en VBA, à mettre dans le module de la feuille.

VB:
Private Sub Worksheet_Change(ByVal R As Range)
Application.EnableEvents = False
If Not Intersect(R, Range("b2:b8000")) Is Nothing Then
If IsDate(ActiveCell.Offset(-1, 0)) Then ActiveCell.Offset(-1, 0).Interior.Color = vbYellow

If Day(R.Offset(0, 0)) > Day(R.Offset(-1, 0)) Or Month(R.Offset(0, 0)) > Month(R.Offset(-1, 0)) Then
R.Offset(0, 0).Interior.Color = vbYellow
R.Offset(-1, 0).Interior.Color = xlNone
End If
End If
Application.EnableEvents = True
End Sub
 
Dernière édition:

Océane1998

XLDnaute Nouveau
Salut,

Un essai en PJ par MFC, si j'ai bien compris la problématique (il est plus facile de répondre a une demande avec un fichier exemple avec le résultat attendu).

A dispo,
Salut,

Un essai en PJ par MFC, si j'ai bien compris la problématique (il est plus facile de répondre a une demande avec un fichier exemple avec le résultat attendu).

A dispo,
C'est exactement ce que je souhaite faire ! Comment avez-vous fait ?
 

Océane1998

XLDnaute Nouveau
Bonjour Océane, kane, le Forum :)

Une proposition en VBA, à mettre dans le module de la feuille.

VB:
Private Sub Worksheet_Change(ByVal R As Range)
Application.EnableEvents = False
If Not Intersect(R, Range("b2:b8000")) Is Nothing Then
If IsDate(ActiveCell.Offset(-1, 0)) Then ActiveCell.Offset(-1, 0).Interior.Color = vbYellow

If Day(R.Offset(0, 0)) > Day(R.Offset(-1, 0)) Or Month(R.Offset(0, 0)) > Month(R.Offset(-1, 0)) Then
R.Offset(0, 0).Interior.Color = vbYellow
R.Offset(-1, 0).Interior.Color = xlNone
End If
End If
Application.EnableEvents = True
End Sub
Merci de votre réponse mais c'est trop compliqué pour moi, je suis encore très novice !
 

kan3pz

XLDnaute Occasionnel
C'est exactement ce que je souhaite faire ! Comment avez-vous fait ?

Regarde dans le menu de MFC > Gérer les règles :
upload_2018-8-20_15-28-22.png


Formule si cellule B n <> "" ET B n+1 = "" Alors on colore en rouge à adapter au besoin.
 

Discussions similaires

Statistiques des forums

Discussions
312 089
Messages
2 085 206
Membres
102 819
dernier inscrit
Michew13