Excel: Faire varier les couleur d'une cellule
Boulot P.
-
lewis34 Messages postés 2557 Date d'inscription Statut Membre Dernière intervention -
lewis34 Messages postés 2557 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai créé un fichier de suivi factures clients
Il y a une colonne Date de facture et une colonne Date d'échéance de la facture.
Je voudrais savoir comment faire (quelle application), sur Excel, pour que 15 jours avant le date d'échéance la cellule soit de couleur Orange et à la date d'échéance voir plus la couleur de la cellule soit Rouge, de façon automatique
Je vous remercie d'avance
J'ai créé un fichier de suivi factures clients
Il y a une colonne Date de facture et une colonne Date d'échéance de la facture.
Je voudrais savoir comment faire (quelle application), sur Excel, pour que 15 jours avant le date d'échéance la cellule soit de couleur Orange et à la date d'échéance voir plus la couleur de la cellule soit Rouge, de façon automatique
Je vous remercie d'avance
A voir également:
- Excel: Faire varier les couleur d'une cellule
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel trier par ordre croissant chiffre - Guide
1 réponse
bonjour, voici un petit bout de code que j'ai fait en deux deux, evuidemment il sera a adapter a ton cas
dans ta feuille excel tu ouvre visual basic et dans ton classeur tu lui ciolle ce code dans l'evenement open comme ca a chaque fois que tu va ouvri ton classeur la comparaison des dates de factures contenue dabs ta feuille va se faire avec celle d'aujourd'hui.
voila a tester mais cela devaris etre fonctionnel comme ça
dans ta feuille excel tu ouvre visual basic et dans ton classeur tu lui ciolle ce code dans l'evenement open comme ca a chaque fois que tu va ouvri ton classeur la comparaison des dates de factures contenue dabs ta feuille va se faire avec celle d'aujourd'hui.
Private Sub Workbook_Open()
'je recupere le nbr de ligne non vide de la feuille
Dim DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row
Dim cel As Range
Dim lig_n As Long, col_n As Long
Dim FL1 As Worksheet, NoCol As Long
Dim date_facture As Date
Dim NoLig As Long, Var As Variant
Dim date_dif As Long
Dim datedujour As Date
datedujour = Date
Set FL1 = Worksheets("Feuil1") ' la feuille qui contient tes données
NoCol = 4 'lecture de la colonne 4 celle qui contient la date
'evidemment tu adapte a ton cas
'parcours du fichier pour comparer les dates
For NoLig = 2 To DernLigne
date_facture = FL1.Cells(NoLig, NoCol)
date_dif = DateDiff("d", datedujour, date_facture)
If date_dif > 0 Then
' je prends que les dates supérieur a aujourd'hui
If date_dif = 0 Then
'echeance aujourdui
'pour les couleurs regarde ce lien
' http://iblogbox.com/devtools/color/
FL1.Cells(NoLig, NoCol).Interior.Color = RGB(255, 0, 0)
ElseIf date_dif > 0 And date_dif < 15 Then
FL1.Cells(NoLig, NoCol).Interior.Color = RGB(255, 224, 32)
ElseIf date_dif >= 15 Then
FL1.Cells(NoLig, NoCol).Interior.Color = RGB(128, 255, 0)
Else
FL1.Cells(NoLig, NoCol).Interior.Color = RGB(160, 255, 255) 'par défaut
End If
Else
'les dates passées
FL1.Cells(NoLig, NoCol).Interior.Color = RGB(192, 192, 192)
End If
'MsgBox (datedujour & " / " & date_facture & " / " & date_dif)
Next NoLig
Set FL1 = Nothing
End Sub
voila a tester mais cela devaris etre fonctionnel comme ça