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 :

Couleur d'une cellule sous condition d'un combobox


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Couleur d'une cellule sous condition d'un combobox
    Bonjour,

    Je dispose d'un UF comprenant une multitude de combobox. Nous nous intéresserons à un combobox qui gère une priorité. 4 Valeurs sont possibles: 0 , 1 , 2 ou 3. Pour chaque valeur une couleur différente.

    J'ai 2 solutions:
    * Soit je gère directement via l'UF et la valeur de la combobox.
    * Soit je gère directement via la feuille en question, en controllant la valeur de la cellule où est sensé être transférée la combobox.value

    Quel est le plus simple ? Avez-vous des pistes pour m'éclaircir ?

    Voici mon code:

    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
    Sub colorier()
    Dim i As Long
    For i = 0 To 3
    Cells(4, 8).Value = i
        If i = 0 Then
        Cells(4, 8).Interior.Color = RGB(255, 0, 0)
            If i = 1 Then
            Cells(4, 8).Interior.Color = RGB(255, 168, 0)
                If i = 2 Then
                Cells(4, 8).Interior.Color = RGB(255, 255, 0)
                    If i = 3 Then
                    Cells(4, 8).Interior.Color = RGB(0, 255, 0)
                    End If
     
                End If
     
            End If
     
        End If
     
    Next i
     
    End Sub

  2. #2
    Membre confirmé
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 365
    Points : 631
    Points
    631
    Par défaut
    Je ne comprend pas la question ????

    au moment du transfert de la valeur dans la cellule

    tu as : la valeur et l'adresse de la cellule

    il te suffit donc de mettre la couleur qui correspond eu même temps ?????

  3. #3
    Membre à l'essai
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Oui c'est exactement cela. Lorsque je clique sur le bouton "Valider" de mon UF, cela transfert les données dans la feuille Excel.
    J'avais mis cela comme code:

    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
    Sub colorier()
    Dim i As Long
    For i = 0 To 3
    priorite.Value=i
        If i = 0 Then
        Cells(4, 8).Interior.Color = RGB(255, 0, 0)
            If i = 1 Then
            Cells(4, 8).Interior.Color = RGB(255, 168, 0)
                If i = 2 Then
                Cells(4, 8).Interior.Color = RGB(255, 255, 0)
                    If i = 3 Then
                    Cells(4, 8).Interior.Color = RGB(0, 255, 0)
                    End If
     
                End If
     
            End If
     
        End If
     
    Next i
     
    End Sub
    Seulement, quelque soit la valeur de ma combobox, la couleur de fond de la cellule reste au rouge.

  4. #4
    Membre confirmé
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable des études(en disponibilité)
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 365
    Points : 631
    Points
    631
    Par défaut
    c'est normal

    dans ton code tu as :

    For i = 0 To 3

    la couleur à la fin du code correspond à i =3

    il faut que tu mette la valeur du comobox dans i

  5. #5
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Sans compter que ta série de If ne tient pas la route.

    L'action après If i = 1 ne se déclenchera jamais puisque déjà pour arriver jusqu'à ce If, il faut que i soit égal à 0.

    Bref, la structure de ton code est à revoir.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. [XL-2007] changer la couleur d'une cellule sous condition
    Par starrlaz dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/07/2016, 21h55
  2. Réponses: 3
    Dernier message: 19/04/2016, 16h43
  3. [XL-2007] Modifier la couleur de texte d'une cellule sous condition
    Par LoInd dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/07/2012, 13h32
  4. [XL-2003] Coloriser une cellule sous condition
    Par cynoq dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/12/2011, 10h24
  5. [XL-2003] faire Clignoter une cellule sous condition
    Par LaPanic dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 21/06/2009, 18h49

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