IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème couleur cellule MFC


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut Problème couleur cellule MFC
    Bonjour à tous,

    Dans une feuille, à chaque ligne, il y a 4 cellules de (D à G) soumises à mise en forme conditionnelle et suivant le résultat se met en couleur.

    Ici une fois que 4 cellules de même ligne ont la même couleur, je voudrais que cela déclenche immédiatement une action de couleur sur une cellule (H) et marque "OK" dans cette cellule.

    J'ai fait ce code ci dessous mais cela ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub ColoriageMemeCouleur()
     
    Dim i As Integer
    Dim lig As Integer
    lig = 0
     
    ActiveSheet.Select
     
    For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
     
    If Cells(i, "D").FormatConditions(1).ColorIndex = 35 And _
        Cells(i, "E").FormatConditions(1).ColorIndex = 35 And _
        Cells(i, "F").FormatConditions(1).ColorIndex = 35 And _
        Cells(i, "G").FormatConditions(1).ColorIndex = 35 Then
        Cells(i, "H").Interior.ColorIndex = 35 And _
        Cells(i, "H").vale = "OK"
     
        'Comptons les lignes effacées
        lig = lig + 1
        End If
    Next i
     
    'Affichons le nombre de lignes maj
    MsgBox "Mise à jour de " & lig & " ligne(s) OK", vbOKOnly + vbInformation, "INFORMATION"
     
    End Sub
    Et j'avoue de ne pas comprendre pourquoi il y a (1) dans "FormatConditions(1)"

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de Denis la Malice
    Homme Profil pro
    FabManager
    Inscrit en
    Février 2013
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : FabManager
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2013
    Messages : 133
    Par défaut Format conditionnel
    Bonjour,
    Chaque cellule change de couleur en fonction de critères. Il ne faut pas que tu fasses un test sur la couleur de chaque cellule, mais que tu fasses un test sur les critères.
    FormatConditions(1).ColorIndex te renvoie l'index de couleur de la règle conditionnelle, mais pas l'index de la couleur qui s'affiche actuellement.
    La condition de la colonne H doit être un AND des 4 conditions des colonnes D à G.

Discussions similaires

  1. Problème couleur cellule MSFlexgrid
    Par dany80 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 22/05/2007, 01h13
  2. Problème : couleur de cellule dans un datagrid
    Par vilcoy dans le forum VB.NET
    Réponses: 9
    Dernier message: 15/03/2007, 17h27
  3. Problème fonction accept() MFC Single Document
    Par lhulard dans le forum MFC
    Réponses: 5
    Dernier message: 18/01/2006, 14h43
  4. Couleur cellule stringgrid sur condition...
    Par kobe dans le forum Composants VCL
    Réponses: 1
    Dernier message: 11/08/2005, 13h49
  5. Pilotage excel (couleur cellule)
    Par TheGoldViking dans le forum C++Builder
    Réponses: 1
    Dernier message: 14/04/2005, 10h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo