condition de différence pour colorier des cellules.

alucard_xs

XLDnaute Occasionnel
Bonjour tout le monde, je vous explique un peu :

j'ai 4 feuilles nommées comme suit :
feuille de base ------feuille n -----feuille n+1 ---- variations

Dans la feuille "variations", je fais "(feuille n+1 - feuille n) / feuille n" et quand cette variation est supérieure à 40 % alors je colorie la cellule en bleu si elle est inférieure alors je colorie en jaune.
cette coloration se fait via un bouton présent dans la "feuille de base", je clique sur ce bouton et il me fait mes variations et il me colorise en fonction de celle ci.
TOut ce petit monde marche bien, mais ce que j'aimerai à présent, c'est que :

si feuille n+1-feuille n < 10 alors il ne me colorie pas ma case dans ma feuille variation, exemple:

feuille n feuille n+1 variation
1 9 ((9-1)/1)*100=800%

et bien là, actuellement il me colorie ma cellule de la feuille "variation" en bleu car variation > 40 %, j'aimerai bien que, puisque 9-1 n'est pas supérieur à 10, et bien qu'il ne me colorie rien.
ce qui serait encore mieux, c'est que je puisse choisir via ma "feuille de base", l'intervalle (10,20,30,50,...) pour laquel je veux qu'il me colore ou non mes case de ma feuille "variation"

j'espère avoir été assez clair, au pire demandez moi ;)

Merci de m'avoir lu et bonne soirée :)
 

matthieu33

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

Bonsoir Alucard_xs,

Dans le fichier joint, tu trouveras un exemple en VBA pour colorier une plage de cellules en fonction d'une définition de bornes de valeurs et de couleurs.
Dans la feuille Couleurs, tu définis les bornes et les couleurs associées aux bornes.

@+
 

Pièces jointes

  • Colorier Cellules.xls
    35.5 KB · Affichages: 132
  • Colorier Cellules.xls
    35.5 KB · Affichages: 133
  • Colorier Cellules.xls
    35.5 KB · Affichages: 132

alucard_xs

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

merci je vais décortiquer ça, sinon si quelqu'un a un bout de code pour créer à partir d'un bouton, une boite de dialogue me permettant de choisir l'écart en dessous duquel, pas de coloriage, ça serait bien sympa ;) (l'utilisateur précise lui même l'écart qu'il veut) -> je précise que ça va me mettre sa valeur dans une variable (que je pourrais utiliser ensuite dans mon prog)
 

matthieu33

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

re Alucard_xs,

Voici un exemple avec une boîte de dialogue.

@+
 

Pièces jointes

  • Colorier Cellules.xls
    39 KB · Affichages: 101
  • Colorier Cellules.xls
    39 KB · Affichages: 102
  • Colorier Cellules.xls
    39 KB · Affichages: 101

alucard_xs

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

Merci

je suis pas sûr de bien avoir explicité en fait: voici le fichier gentillement proprosé avec quelques modif,

feuille n : des données
feuille n+1 : des données année suivantes
feuille variation : le tx de variation

qd l'user clique sur le bouton "valeur" et qu'il met 10, en cliquant sur le bouton "colorier", le prog regarde la valeur sur la "feuille n", si cette valeur < 10 il ne colorie pas la cellule correspondante dans la "feuille variation" sinon il la colore
etc pour les autres lignes.

en espérant avoir été plus clair et en vous remerciant aussi ;)
 

Pièces jointes

  • Colorier Cellules2.xls
    42 KB · Affichages: 83

alucard_xs

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

merci bien c'est à peu près ça que je souhaitais,
par contre ma méthode de coloriage n'est pas la même, pour résumer, moi dans ma feuille "variation",
si delta <50 alors jaune
sinon si 50<=delta<10 alors bleu
Donc ce qu'il faudrait faire avant cette macro c'est lui dire, ben voilà, si dans ma valeur.cellule."feuille" n>dblValeur alors ok tu lance mais j'arrive pas à écrire la ligne de commande lui stipulant ceci.
je pourrias bien le faire pour une cellule mais comment faire pour balayer toutes les cellules de ma feuille n( qui se retrouvent en quelque sorte dans ma feuille "variation")
 

alucard_xs

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

Voici ma macro color :

Code:
Sub color(nomfeuille)

For Each c In Worksheets(nomfeuille).range("C2:BH1600")
If c.Value > dblValeur Then

If c.Value <> "" Then
    If Abs(c.Value) < 50 Then
    c.Interior.ColorIndex = xlNone
    Else
        If Abs(c.Value) >= 50 And Abs(c.Value) < 100 Then 'and diff>nombre choisi Then
        c.Interior.ColorIndex = 19
            Else
                If Abs(c.Value) >= 100 And Abs(c.Value) < 300 Then
                c.Interior.ColorIndex = 6
                Else
                    If Abs(c.Value) >= 300 And Abs(c.Value) < 500 Then
                    c.Interior.ColorIndex = 45
                    Else
                    If Abs(c.Value) >= 500 And Abs(c.Value) < 1000 Then
    c.Interior.ColorIndex = 46
    End If
    If Abs(c.Value) > 1000 Then
    c.Interior.ColorIndex = 3
    End If
    End If
    End If
    End If
    End If
End If
Else: c.Interior.ColorIndex = xlNone
End If
Next c
End Sub
 

alucard_xs

XLDnaute Occasionnel
Re : condition de différence pour colorier des cellules.

voilà, pour colorier la cellule C2, il va voir la cellule C2 de la feuille n et si Valeur.C2.feuillen>dblValue alors ok tu colores, ensuite tu fais pareil pour C3,C4, pui D2, D3, D4 ...etc bref toutes les cellules que j'ai dans ma feuille n et qui se répercute dans ma feuille variation.
 

Discussions similaires

Réponses
4
Affichages
141

Statistiques des forums

Discussions
312 338
Messages
2 087 398
Membres
103 536
dernier inscrit
komivi