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 :

Liste déroulante VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2007
    Messages : 62
    Par défaut Liste déroulante VBA
    Bonsoir,
    j'aurai voulu savoir comment on peut mettre par exemple le nom des éléves d'une classe dans une liste déroulante sachant que ces noms se trouvent sur un classeur excel!
    merci beaucoup

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Slt,
    voici un petit tuto tiré de la FAQ du site qui t'aideras certainement:
    http://excel.developpez.com/faq/?pag...TriSansDoublon

    Ta liste déroulante (c'est un controle Combobox) tu veux la mettre directement sur la feuille de calcul ou dans un userform.

    Les noms des élèves ce trouvent dans une colonne ou sur une ligne? Laquelle ?

    Avec un peu + d'éléments ou pourras t'aider plus.

    Merci A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2007
    Messages : 62
    Par défaut
    Bonjour rvtoulon,

    Ma liste déroulante se trouve dans un formulaire.
    Les noms des éléves se trouvent en colonne sur la feuille 1 à partir de la seconde ligne.


    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
    Private Sub MODIFIER_Click()
        Unload Me
        With Modif_eleves
    '*********************************************
         'INITIALISATION DU MENU DEROULANT
    '********************************************
        .Nom_Eleves
            For i = 0 To 18
            .Nom_Eleves.AddItem Feuil1.Cells(2 + i, 1)
                    Next i
     
            'Use drop-down list
            .Nom_Eleves.Style = fmStyleDropDownList
            'Combo box values are ListIndex values
            .Nom_Eleves.BoundColumn = 0
            'Set combo box to first entry
            .Nom_Eleves.ListIndex = 0
    End With
        'Afficher le formulaire
        Modif_eleves.Show
    End Sub
    Merci beaucoup

  4. #4
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Slt,
    alors pour l'exemple :
    - mon formulaire = userform1,
    - ma liste déroulante = combobox1
    - La liste de donnée se trouve en Feuil1, colonne A, à partir de la deuxième ligne.

    dans userform initialize :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub UserForm_Initialize()
    ' je boucle sur toute les lignes pleines à partir de la 2eme ligne de
    ' la colonne A
    For i = 2 To ActiveSheet.Range("A2").End(xlDown).Row
    'je remplie la combobox
    ComboBox1.AddItem (Range("A" & i).Value)
    Next i
    End Sub
    Adapte le code en fonction de tes besoins.
    A+

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2007
    Messages : 62
    Par défaut
    Je suis arrivée à faire une liste déroulante!!

    Mon problème c'est que j'aimerai que la liste s'arrête au moment où il n'y a plus de noms sachant qu'on peut ajouter ou supprimer des noms des éléves!!!

    En faite j'ai trois classes de terminales : la ts1 - la ts2 - la ts3. Pour ces trois terminales il ya les noms des éléves sur la feuille 1.
    dans la colonne A = il y a les noms de la TS1
    dans la colonne B = il y a les noms de la TS2
    dans la colonne c = il y a les noms de la TS3
    Il y a une liste déroulante pour sélectionner la terminale et après il y a la liste déroulante des noms des éléves sur le même formulaire. J'aimerai pouvoir sélectionner une terminale et avoir le nom des éléves de cette classe dans l'autre liste déroulante.

    De plus je vais devoir après changer le nom de cet éléve qui devra être modifié sur excel.

    Je vous ai mis ci-joint le formulaire pour que vous puissiez visualiser.

    Voici mon algo :

    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
    [Private Sub MODIFIER_Click()
        Unload Me
      With MODIF_ELEVES
    '********************************************
         'INITIALISATION DU MENU DEROULANT
    '********************************************
        .classe_CONCERNEE.AddItem "TS1"
        .classe_CONCERNEE.AddItem "TS2"
        .classe_CONCERNEE.AddItem "TS3"
    '*********************************************
         'INITIALISATION DU MENU DEROULANT
    '********************************************
            For i = 0 To 19
            .Nom_Eleves.AddItem Feuil1.Cells(2 + i, 1)
            Next i
     
            'Combo box values are ListIndex values
            .Nom_Eleves.BoundColumn = 0
            'Set combo box to first entry
            .Nom_Eleves.ListIndex = 0
    End With
        'Afficher le formulaire
        MODIF_ELEVES.Show
    End Sub]
    Merci d'avance

Discussions similaires

  1. liste déroulante vba
    Par arbotch dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/04/2010, 16h23
  2. Copier des cellules excel dans une liste déroulante vba
    Par Papillon34 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/01/2010, 16h03
  3. [XL-2003] Liste Déroulante VBA EXCEL 2003
    Par Alexandra 01 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/12/2009, 15h55
  4. Mettre nom table dans liste déroulante vba Excel
    Par Fred246 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/12/2009, 08h20
  5. Liste déroulante VBA
    Par GMmaurice dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/04/2008, 15h33

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