XL 2010 For each .... jusqu'a la derniere non vide

Bens7

XLDnaute Impliqué
Bonjour a tous !
Voial après avoir fait plusieurs essai et bien sur Googeliser mon probleme je n;arrive pas a adapter ma macro :

Code:
Sub majcouleur()
    Dim u As Range
    For Each u In Sheets("ACTIF").Range("u2:u343")

    'retard
    If u = (Date - 7) Or u < (Date - 7) Then
    u.Interior.Color = RGB(255, 199, 206)
    u.Font.Color = RGB(156, 0, 0)
    End If
    Next u
End Sub

Tres simplement met en rouge les retard dans la collone u (Pas de mise en forme conditionel mon fichier etant tres lourd ca ralentie enormement...)
Le soucci c'est Range("u2:u343") , je voudrais sans mettre u343... mais la dernière cellule non vide de u ...

j'ai donc essayer : For Each u In Sheets("ACTIF").Range("u2").End(xldown).Row

et ca marche pas /... voila merci a tous
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum

Une autre façon (sans boucle)
Est-ce plus rapide sur ton vrai fichier ?
VB:
Sub majcouleur_V2()
Dim u As Range, p As Range
Application.ScreenUpdating = False
Set u = Sheets("ACTIF").Range(Cells(2, "U"), Cells(Rows.Count, "U").End(xlUp))
u.Offset(, Columns.Count - 21).Formula = "=IF(OR(U2=TODAY()-7,U2<TODAY()-7),""Staple"",1)"
Set p = u.Offset(, Columns.Count - 21).SpecialCells(-4123, 2).Offset(, -(Columns.Count - 21))
p.Interior.Color = RGB(255, 199, 206): p.Font.Color = RGB(156, 0, 0)
Columns(Columns.Count).Clear: [U2].Select
End Sub
 

Discussions similaires

Réponses
3
Affichages
457

Statistiques des forums

Discussions
311 720
Messages
2 081 925
Membres
101 841
dernier inscrit
ferid87