VBA colorier les cellules sous condition
Glec
Messages postés
15
Statut
Membre
-
zavenger Messages postés 817 Statut Membre -
zavenger Messages postés 817 Statut Membre -
Bonjour,
J'ai une macro assez spécifique à réaliser et j'ai besoin d'aide. J'ai en fait une colonne m'indiquant des montants avec leurs sous montants situées en dessous, de cette façon
montant 1(en gras)
sous montant 1a
sous montant 1b
montant 2(en gras)
sous montant 2a
...
...
...
Mon but est de colorier en rouge toutes les cellules dont la valeur est supèrieure à 10% de leur montant correspondant.
Ca donnerait en gros
Dim i As Long
Dim e As Long
Sheets("feuil1").Select
For i = 1 To Range("A65536").End(xlUp).Row
If Cells(i, 1).Font.Bold = True Then Exit For
Next i
For e = i + 1 To Range("A65536").End(xlUp).Row
If Cells(e, 1).Value > "10% de la prochaine cellule située en haut True" Then Exit For
Next e
Si les deux conditions sont remplies, alors colorier en rouge les cellules supèrieures au montant en question
J'ai une macro assez spécifique à réaliser et j'ai besoin d'aide. J'ai en fait une colonne m'indiquant des montants avec leurs sous montants situées en dessous, de cette façon
montant 1(en gras)
sous montant 1a
sous montant 1b
montant 2(en gras)
sous montant 2a
...
...
...
Mon but est de colorier en rouge toutes les cellules dont la valeur est supèrieure à 10% de leur montant correspondant.
Ca donnerait en gros
Dim i As Long
Dim e As Long
Sheets("feuil1").Select
For i = 1 To Range("A65536").End(xlUp).Row
If Cells(i, 1).Font.Bold = True Then Exit For
Next i
For e = i + 1 To Range("A65536").End(xlUp).Row
If Cells(e, 1).Value > "10% de la prochaine cellule située en haut True" Then Exit For
Next e
Si les deux conditions sont remplies, alors colorier en rouge les cellules supèrieures au montant en question
Configuration: Windows XP Internet Explorer 6.0
1 réponse
-
Bonjour,
pourquoi pas un truc du style:
Dim i As Long
Dim e As Long
Montant = 0
Sheets("feuil1").Select
For i = 1 To Range("A65536").End(xlUp).Row
If Cells(i, 1).Font.Bold = True Then
Montant = Cells(i, 1).value
else
If Cells(i, 1).Value > Montant * 0,1 Then
Colorie ta cellule (je n'ai pas le code)
Endif
endif
Next i-
Merci pour la rapidité zavenger!
Malheureusement, le montant n'est jamais fixe puisque ce sont des fichiers importés et toujours différents, il faut plutot que je me focalise sur le fait que le montant soit en gras (j'ai d'ailleurs créé une macro pour que ce soit le cas et qu'il y ait une facon de distinguer les montants des sous montants)
J'espere etre clair dans mes explications
-