XL 2019 modif suivant une date

riv

XLDnaute Nouveau
bonjour je suis débutant

je fais des essai pour pouvoir évoluer et apprendre et la je ne trouve pas mon erreur


merci d'avance
 

Pièces jointes

  • modif case suivant une date.xlsm
    12.3 KB · Affichages: 5

riv

XLDnaute Nouveau
bonjour
merci de ta réponse oui j'avais trouver cette erreur, mais la j'ai mi plusieurs date différente et rien ne change que ce sois a l'ouverture du fichier ou en temps réel.
 

Pièces jointes

  • modif case suivant une date.xlsm
    14.7 KB · Affichages: 1

Gégé-45550

XLDnaute Accro
bonjour
merci de ta réponse oui j'avais trouver cette erreur, mais la j'ai mi plusieurs date différente et rien ne change que ce sois a l'ouverture du fichier ou en temps réel.
Bonjour,
Allez, c'est bien de chercher à apprendre, bravo.
Voici une code qui devrait fonctionner
VB:
Private Sub Workbook_Open()
Dim cellule As Range
    For Each cellule In Range("I14:I100") 'for each permet une boucle de controle
        If cellule.Value < Date - 10 And cellule.Value <> "" Then    '(If cell.Value < Date - 365 And )la date aujourd'hui - 1 an , (cell.Value <> "") controle que la case est rempli
            cellule.Interior.ColorIndex = 42  'remplit la case en rose
            cellule.Font.ColorIndex = 2    'ecrit en blanc
            cellule.Font.Bold = True   'ecrit en gras
        End If
    Next            'next ferme la boucle
End Sub
Quelques conseils :
  • déclarer vos variables avec le mot clé Dim ici j'ai déclaré la variable cellule comme un 'Range'. Pour être sûr de ne pas oublier de déclaration, mettez tout en haut de vos modules la déclaration 'Option Explicit'
  • Utilisez l'indentation du code pour plus de lisibilité.
  • J'ai juste modifié votre code pour qu'il fonctionne mais il est encore loin d'être bien écrit. Essayez de trouver pourquoi et comment l'améliorer.
Bon courage et persévérez, c'est ainsi que vous deviendrez petit à petit un cador comme beaucoup de 'Barbatruc' de ce site.
Cordialement,
 

riv

XLDnaute Nouveau
Bonjour,
Allez, c'est bien de chercher à apprendre, bravo.
Voici une code qui devrait fonctionner
VB:
Private Sub Workbook_Open()
Dim cellule As Range
    For Each cellule In Range("I14:I100") 'for each permet une boucle de controle
        If cellule.Value < Date - 10 And cellule.Value <> "" Then    '(If cell.Value < Date - 365 And )la date aujourd'hui - 1 an , (cell.Value <> "") controle que la case est rempli
            cellule.Interior.ColorIndex = 42  'remplit la case en rose
            cellule.Font.ColorIndex = 2    'ecrit en blanc
            cellule.Font.Bold = True   'ecrit en gras
        End If
    Next            'next ferme la boucle
End Sub
Quelques conseils :
  • déclarer vos variables avec le mot clé Dim ici j'ai déclaré la variable cellule comme un 'Range'. Pour être sûr de ne pas oublier de déclaration, mettez tout en haut de vos modules la déclaration 'Option Explicit'
  • Utilisez l'indentation du code pour plus de lisibilité.
  • J'ai juste modifié votre code pour qu'il fonctionne mais il est encore loin d'être bien écrit. Essayez de trouver pourquoi et comment l'améliorer.
Bon courage et persévérez, c'est ainsi que vous deviendrez petit à petit un cador comme beaucoup de 'Barbatruc' de ce site.
Cordialement,
merci bien de ton aide et de tes encouragements. j'ai tester et cela fonctionne j'ai ajouter un else pour m'amuser et ca fonctionne.
 

Discussions similaires