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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Moselle (Lorraine)

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

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    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 émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    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 : 367
    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 averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Moselle (Lorraine)

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

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    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 émérite
    Homme Profil pro
    Responsable des études(en disponibilité)
    Inscrit en
    Juin 2007
    Messages
    367
    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 : 367
    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 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
    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.

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