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 :

Affichage d'une cellule en fonction d'une liste [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut Affichage d'une cellule en fonction d'une liste
    Bonjour,

    Voici mon souci :

    J'ai troislistes :

    listeA :
    item1a
    item2a
    item3a
    item4a

    listeB :
    item1b
    item2b
    item3b

    listeC :
    item1c
    item2c


    J'ai deux cellule :
    A,1 et A,2

    Dans A,2 j'ai un contrôle : "si A,1 est vide alors A,2 = listeB sinon A,2 = listeC"
    Je voudrais ajouter un contrôle dans A,1 : "si A,2= n'importe quel item de listeC alors rayer la couleur de la cellule A,1".


    Je ne sais pas si je suis très explicite, si besoin je peux reformuler et / ou afficher un exemple.

    Merci à vous

  2. #2
    Membre expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 869
    Points : 3 442
    Points
    3 442
    Billets dans le blog
    1
    Par défaut
    Salut,

    Dans A,2 j'ai un contrôle ...
    c'est comme controle un combobox, un listebox ?

    Je voudrais ajouter un contrôle dans A,1 ...
    Conseil : fait attention au références circulaire
    - A1 reférence a A2
    - A2 référence a A1

    Dans ton cas pour l'instant ça va mais reste vigilant

    Sinon un petit exemple non lié (comme tu as fait pour tes listes) et plus de détails serai le bienvenu

    a bientôt
    Ils ne savaient pas que c'était impossible ... du coup ils l'ont fait (Mark Twain)

    n'oubliez pas de si les messages vous aide ou sont pertinents et de mettre quand cela est !

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut
    Citation Envoyé par Igloobel Voir le message
    Salut,


    c'est comme controle un combobox, un listebox ?
    Une simple condition. Il s'agit d'une "validation des données" ce n'est pas un composant VBA.

    Citation Envoyé par Igloobel Voir le message
    Conseil : fait attention au références circulaire
    - A1 reférence a A2
    - A2 référence a A1

    Dans ton cas pour l'instant ça va mais reste vigilant
    Citation Envoyé par Igloobel Voir le message
    Sinon un petit exemple non lié (comme tu as fait pour tes listes) et plus de détails serai le bienvenu

    a bientôt
    En effet je joins un exemple car j'explique très mal
    Fichiers attachés Fichiers attachés

  4. #4
    Membre expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 869
    Points : 3 442
    Points
    3 442
    Billets dans le blog
    1
    Par défaut
    Salut

    pour faire ce que tu veux je ne voit qu'une solution c'est de faire une macro événementielle.

    pour cela il faut aller dans le VBA de la feuille (ici Feuil1) et y mettre ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Row = 1 And Target.Column = 2 Then
            Select Case Cells(Target.Row, Target.Column).Value
                Case "item1c", "item2c"
                    Cells(Target.Row, Target.Column).Offset(0, -1).Interior.Pattern = xlLightUp
                Case Else
                    Cells(Target.Row, Target.Column).Offset(0, -1).Interior.Pattern = xlSolid
            End Select
        End If
    End Sub
    Target étant le cellule active

    et voilà

    Dis moi si cela te convient

    PS : c'est domage que tu t'ais prit un -1 point (main rouge) par ce que tu as mis ton exemple en ligne par contre moi je t'ajoute un point parce que l'idée de mettre une condition dans la source d'une liste de validation non seulement ne m'était jamais venue mais je pensais pas que c'était possible

    Igloobel
    Ils ne savaient pas que c'était impossible ... du coup ils l'ont fait (Mark Twain)

    n'oubliez pas de si les messages vous aide ou sont pertinents et de mettre quand cela est !

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut
    Merci pour ton retour.

    Quant à ton exemple, le souci est que les items de la liste C doivent être écrit en "dur" dans la macro ?

    Car pour complexifier le truc, ma liste est mise à jour par un programme externe et donc change régulièrement lol

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2010
    Messages : 116
    Points : 98
    Points
    98
    Par défaut
    c'est ok ça fonctionne avec quelques adaptations,
    merci Igloobel

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/03/2010, 14h15
  2. [XL-2003] Texte d'une cellule en fonction d'une checkbox
    Par altra dans le forum Excel
    Réponses: 4
    Dernier message: 10/08/2009, 10h24
  3. Réponses: 2
    Dernier message: 03/07/2009, 14h35
  4. Nom d'une cellule en fonction d'une variable
    Par Kibald dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/12/2008, 21h47
  5. [MySQL] Changement de couleur d'une cellule en fonction d'une requete
    Par freko dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 10/07/2008, 16h56

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