1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
i = 1
J = 1
Do While Cells(i, J) <> "DISPONIBLE"
If J < 10 Then
J = J + 1
Else
J = 1
i = i + 1
End If
Loop
' boucle ligne par ligne sur 10 colonnes, s'arrête dès quelle ne trouve pas le mot "disponible" dans une cellule
'optimisation possible: utiliser la méthode find
' a partir de là le J ne bouge plus et représente la colonne où on a trouve le mot "disponible"
Do While Cells(i, J) <> "" 'boucle sur les cellules de la colonne J tant qu'on ne pas une cellule vide
If Left(Cells(i, 1), 5) <> "Total" Then si les premiers caractère de la première colonne ne sont pas "Total"
If Cells(i, J).Value < 0 Then 'si la valeur de la cellule est négative
Cells(i, J).Select 'on sélectionne (inutile)
With Selection.Interior
.PatternColorIndex = xlAutomatic 'puis on colorie
.Color = 255 'optimisation: se passer de la sélection
End With
Else 'sinon
Cells(i, J).Select 'on sélectionne (inutile)
With Selection.Interior 'puis on colorie d'un autre manière
.Pattern = xlNone 'optimisation: se passer de la sélection
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End If
i = i + 1
Loop |