colorer une cellule automatiquement

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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 !
 
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:
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 ?
 
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 !
 
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.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour