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 :

Listes déroulantes imbriquées [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Ingénieur
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Par défaut Listes déroulantes imbriquées
    Bonjour à tous,

    J'ai cherché mais je ne trouve pas d'aide pour résoudre mon problème.

    Voici le sujet :
    Je souhaite réaliser dans une cellule un choix par liste déroulante sous la forme suivante,
    Equipe 1
    Equipe 2
    ......

    Jusque là, je sais faire sans utiliser le VBA mais le but est d'avoir cette liste puis quand je passe le mulot sur Equipe 1, j'ai une seconde liste qui s'affiche en parallèle (Comme quand je fais : Fichier - Zone d'impression - Définir en utilisant la barre de menu sous Excel).

    Equipe 1 -> Nom 1
    Equipe 2 Nom 2
    ...... Nom 3

    Je souhaite le faire un VBA et je souhaite aussi pouvoir récupérer l'information sélectionnée pour l'utiliser dans une seconde Macro.

    Merci pour votre aide.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 102
    Par défaut
    Bonjour

    Une solution

    nommer les zones:
    zone "Equipe" pour les équipes
    zone "nomequipe1"
    zone "nomequipe2"

    Créer les deux combobox (zone de liste déroulante)

    dans la propriété "ListFillRange" du combobox1 mettre: Equipe
    Puis cliquer sur combobox1 et mettre le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub ComboBox1_Change()
    Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = ""
    ComboBox2.Value = ""
    ComboBox2.ListIndex = -1
     
    Select Case ComboBox1.Value
        Case "Equipe 1"
            Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = "nomequipe1"
        Case "Equipe 2"
            Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = "nomequipe2"
    End Select
    End Sub
    JP014

  3. #3
    Membre très actif
    Homme Profil pro
    Ingénieur
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Par défaut
    Bonjour jp014,

    J'ai suivi tes indications et appliqué ta solution mais je n'obtiens aucun résultat dans les ''combobox'', elles sont vides !

    Je n'arrive pas à comprendre l'utilité de la seconde ''Combobox'', je souhaite que tout se déroule à partir d'un seul bouton liste qui déroulera une seconde liste fonction de l'équipe sélectionnée dans un premier temps.

    Merci d'avance pour tes réponses.

  4. #4
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 122
    Par défaut
    Salut
    Ce que tu cherches a faire c'est un menu contextuel ?
    Pour ce qui est d'avoir le fonctionnement que tu cherches, je doute que se soit réalisable ... du moins pas simplement.
    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  5. #5
    Membre très actif
    Homme Profil pro
    Ingénieur
    Inscrit en
    Février 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Février 2007
    Messages : 163
    Par défaut
    Bonsoir,
    C’est Ok, j'ai trouvé mon problème pour alimenter les listes.

    Maintenant je souhaiterais mettre les listes dans une feuille ''liste'' et là, je n'arrive pas à faire le lien dans la macro!
    Par quoi dois-je remplacer "AH8:AH11" pour avoir la même plage mais qui appartient à la feuille ''liste''

    Merci pour votre aide.


    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
    Private Sub ComboBox1_Change()
     
    Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = ""
    ComboBox2.Value = ""
    ComboBox2.ListIndex = -1
     
     
     
    Select Case ComboBox1.Value
        Case "Equipe 1"
            Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = "AH8:AH11"
            ComboBox2.ListIndex = 0
        Case "Equipe 2"
            Worksheets(ActiveSheet.Name).ComboBox2.ListFillRange = "AH14:AH18"
            ComboBox2.ListIndex = 0
    End Select
     
     
    End Sub

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 102
    Par défaut
    Bonjour

    Il faut écrire comme ci dessous

    On retrouve ce type d'écriture en nommant les zones.

    JP014

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/04/2008, 14h20
  2. liste déroulante imbrique probléme pour simplifier
    Par popofpopof dans le forum IHM
    Réponses: 11
    Dernier message: 11/08/2007, 18h37
  3. liste déroulante imbrique marche MAL
    Par popofpopof dans le forum IHM
    Réponses: 2
    Dernier message: 20/05/2007, 21h42
  4. Listes déroulantes "imbriquées"
    Par SdenS dans le forum IHM
    Réponses: 3
    Dernier message: 27/02/2007, 16h33
  5. Liste déroulante imbriquée importée depuis une Bdd
    Par WhyMee dans le forum Général JavaScript
    Réponses: 27
    Dernier message: 07/08/2006, 16h48

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