Colorer des cellules en fonction des dates

Résolu
randall Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   -  
randall Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Dans un fichier Excel il faudrait que je mettre en couleur des cellules contenant des dates dont le jour est inférieur de 1 jour à l'année d'avant.

J'ai essayé le code suivant mais j'ai une erreur à l'instruction cell.Interior.ColorIndex = 4 (propriété

 no géré par cet objet

Sub avertir()   

                                                                             
Dim cell As Variant
For Each cell In Range("C6:C10")
If cell.Offset(0, -1).jour > 1 Then
cell.Interior.ColorIndex = 4
End If

next

end sub

exemple

14/02/2023      date  10/02/2024 il faut que la cellule se mette en rouge par exemple dès que la date est inférieur de 1 jour au 14/02/2023 l'année d'après en prenant comme référence la date du jour actuel pour comparer dès qu'on ouvre le classeur

Merci pour la réponse

A voir également:

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 

bonjour,

Ce qui coince, c'est ceci:

cell.Offset(0, -1).jour

Je n'ai pas compris ce que tu voulais réaliser.

0
randall Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   9
 

Merci pour la réponse en fait ce que je voudrais faire c'est pour un ami, éleveur de bétail qui met les dates de vaccinations de son bétail sur un carnet. Je lui ai proposé de faire une procédure sur Excel qui comporte les dates suivantes

Dans une colonne identification de l'animal sur la colonne à côté la date de vaccination et sur la colonne à côté la date du jour qui changera à chaque ouverture d'Excel.

Le but est de colorer en rouge la date de vaccination lorsque arrivera la date de rappel qui se situe 10 jours avant l'échéance. Pour faire court quand la date du jour arrivera dans un an moins 10 jours la cellule se colorera en rouge.

C'est plus explicite comme ça je pense

Merci si tu peux me répondre

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

Peut-être ainsi, alors:

Sub avertir()
Dim cell As Range
For Each cell In Range("C6:C10")
    If cell <> 0 And cell < Now() - 355 Then
        cell.Interior.ColorIndex = 4
    End If
Next
End Sub
1
randall Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   9
 

Bonjour,

Merci pour la réponse c'est bon j'ai juste modifier les cellules à colorier c'est à dire pas la colonne date du jour mais celle de la vaccination soit 

cell.Offset(0, -1).Interior.ColorIndex = 4 

0