XL 2010 double clic sur la colonne A (ou se trouve des dates), colorer de vert [RESOLU]

  • Initiateur de la discussion Initiateur de la discussion anthoYS
  • Date de début Date de début

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 !

Bonjour,

Je ferais comme ça, mais tu ne précises pas s'il n'y a que des dates, ou si on ne doit colorer que des dates parmi d'autres valeurs.

Code dans le code de la feuille, double cliquer sur une cellule de la colonne A.

VB:
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i As Long
For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
    If Cells(i, 1) <> "" Then
        Cells(i, 1).Interior.Color = 5296274
    End If
Next i
Cancel = True

End Sub

A+

EDIT : bonjour Sylvanu 🙂
 
Bonjour anthoYs, sylvanu, Calvus, JM,

Pourquoi utiliser le double-clic ?

Cette macro dans le code de la feuille colore automatiquement les dates en colonne A :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo(), i&
Set Target = Intersect(Target, Columns(1), UsedRange)
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For Each Target In Target.Areas
    Target.Interior.ColorIndex = xlNone 'RAZ
    tablo = Target.Resize(, 2) 'matrice, plus rapide, au moins 2 éléments
    For i = 1 To UBound(tablo)
        If IsDate(tablo(i, 1)) Then Target(i).Interior.ColorIndex = 4 'vert
Next i, Target
End Sub
Testé sur 100 000 lignes avec des dates 1 ligne sur 2 => 1,1 seconde chez moi pour tout colorer.

A+
 
Bonjour anthoYs, sylvanu, Calvus, JM,

Pourquoi utiliser le double-clic ?

Cette macro dans le code de la feuille colore automatiquement les dates en colonne A :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo(), i&
Set Target = Intersect(Target, Columns(1), UsedRange)
If Target Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For Each Target In Target.Areas
    Target.Interior.ColorIndex = xlNone 'RAZ
    tablo = Target.Resize(, 2) 'matrice, plus rapide, au moins 2 éléments
    For i = 1 To UBound(tablo)
        If IsDate(tablo(i, 1)) Then Target(i).Interior.ColorIndex = 4 'vert
Next i, Target
End Sub
Testé sur 100 000 lignes avec des dates 1 ligne sur 2 => 1,1 seconde chez moi pour tout colorer.

A+
Bonjour.

C'est vrai c'est inutile. Merci !
 
- 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