Macro mise en forme conditionnelle

Lucius

XLDnaute Nouveau
Bonjour à tous,

Je cherchais à créer une macro permettant une mise en forme conditionnelle (mais avec plusieurs contraintes et plus de 3 possibilités).

Dans le fichier joint, l'idée serait que la cellule du forecast soit de couleur:
_ 4 si inférieure ou égale au budget S1 ("C"<"B")
_ 36 si supérieure au budget S1 et que celui-ci est égal à 0 ("C" > "B" + "B" = "0")
_ 33 si supérieure au budget S1 mais inférieur aux CAR VAL ("C" > "B" + "C" < "A")
_ 40 si supérieure au budget S1 mais inférieure aux budgets S1 + S2 ("C">"B" + "C" < ("B" + "D"))
_ 39 dans le reste des cas...

Si quelqu'un peut m'aider à ce sujet, je lui en serais très reconnaissant.

Merci beaucoup d'avance et bon après-midi.


Cordialement,
 

Pièces jointes

  • Test MFC macro.xls
    23.5 KB · Affichages: 56

lele79

XLDnaute Nouveau
Re : Macro mise en forme conditionnelle

Bonjour Lucius, le forum

voici ma contribution:
Code:
Sub Couleur()
    Dim sht As Worksheet
    Dim i As Integer, ll As Integer
    Dim A As Integer, B As Integer, C As Integer, D As Integer
    
    Set sht = ActiveSheet
    ll = sht.Cells(2000, 3).End(xlUp).Row
    i = 2
        
    Do While i < ll
        i = i + 1
        A = sht.Cells(i, 1)
        B = sht.Cells(i, 2)
        C = sht.Cells(i, 3)
        D = sht.Cells(i, 4)
        
        If C < B Then
            sht.Cells(i, 3).Interior.ColorIndex = 4
            ElseIf (C > B And B = 0) Then
            sht.Cells(i, 3).Interior.ColorIndex = 36
            ElseIf (C > B And B <> 0 And C < A) Then
            sht.Cells(i, 3).Interior.ColorIndex = 33
            ElseIf (C > B And B <> 0 And C < (B + D)) Then
            sht.Cells(i, 3).Interior.ColorIndex = 40
            ElseIf (C > B And B <> 0 And C > A And C > (B + D)) Then
            sht.Cells(i, 3).Interior.ColorIndex = 39
        End If
Loop
End Sub


Cordialement,

Lele79
 

Pièces jointes

  • Test20MFC20macro(1).xls
    32 KB · Affichages: 78
Dernière édition:

Discussions similaires

Réponses
12
Affichages
263

Statistiques des forums

Discussions
312 453
Messages
2 088 550
Membres
103 881
dernier inscrit
malbousquet