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
De l'importance des mots dans le titre d'une discussion
(voir ma réponse dans l'autre fil d'AnthoYS)
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
Bonjour.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 :
Testé sur 100 000 lignes avec des dates 1 ligne sur 2 => 1,1 seconde chez moi pour tout colorer.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
A+