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 :

Comment peupler les propositions d'une listbox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2015
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 156
    Par défaut Comment peupler les propositions d'une listbox
    J'essaye de peupler une ListBox à partir des fonctions de personnels déjà présente dans une colonne d'une feuille Excel.
    Cependant je e trouve aucun moyen de le faire.

    J'ai essayé de l'Initialize mais cela n'apparait pas dans le bandeau déroulant du code VBA à partir de mon UserForm AddReservist.

    Nom : IMG_2992[1].jpg
Affichages : 208
Taille : 795,7 Ko

    J'ai essayé de le faire directement dans le code, comme vous pouvez le voir sur la photo, mais ça ne change rien.
    Aucune interaction n'est alors possible avec la ListBox.

    J'ai finalement réussi à le modifier dans les propriétés mais le problème est qu'il ne me semble pas que j'ai les fonctions uniques mais plutôt autant de fonctions qu'il y a de personnels. J'aurais préféré une liste déroulante.

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    quand tu utilise rowsource tu ne peut pas faire des .add après par la suite

    a la place de rowsource="...." tu met .list=range("xxxxx").value et la tu pourra faire des ajouts par la suite
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 40
    Par défaut
    Bonjour, sur ta première photo, sur la sélection de gauche, sélectionne "UserForm" et sur celui de droite (sur celui où tu disais que tu ne trouvais pas Initialize), sélectionne justement Initialize qui apparaît.

    Après ça tu peux remplir ta ComboBox1.

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      ComboBox1.AddItem Range(RangeContenantTesItems)
    Je ne suis pas un professionnel de VBA et j'ai peut-être mal compris ta question donc ce n'est pas forcément bon. J'essaye juste d'apporter une solution Bonne journée

  4. #4
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2015
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 156
    Par défaut
    @Patricktoulon
    Merci beaucoup ! Néanmoins la feuille à laquelle je fais référence n'est pas dans la feuille active mais dans une autre feuille.
    Comment puis-je faire référence à cette deuxième ?

    Ensuite comment puis-je faire référence à des valeurs uniques ?

    @Bermirdor
    Merci aussi ! Cependant ma "UserForm" est bien AddReservist et je n'ai donc pas accès à Initialize.

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    exemples divers

    1°la feuille active est la feuille 1 et ta liste est en feuille2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .list=sheets("Feuil2").range("A1:B10")
    2° si tu es sur la feuille active
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .list=activesheet.range("A1:B10")
    3°si ta liste est dans la feuille 3 d'un autre classeur ouvert dans la même instance d'Excel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .list=workbooks("nom de l'autre classeur avec son extention).sheets("Feuil3").range("A1:B10")
    et quoi que pour une lisibilité de code il vaut mieux variabiliser pour ce 3° exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dim tablo,Wbk as workbooks
    Set wbk=workbooks("nom de l'autre classeur avec son extention")'exemple ""monclasseur.xlsm""
    tablo=wbk.sheets("Feuil3").range("A1:B10").value
    combobox1.list=tablo
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2015
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 156
    Par défaut
    Merci pour ces réponses. Néanmoins en cliquant sur mon bouton qui fait apparaître ma UserForm AddReservistUserForm avec ma ComboBox ComboBoxFunction (j'ai changé la List pour une ComboBox pour avoir le côté "déroulant") et malgré avoir inséré le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    With ComboBoxFunction
        .List = Sheets("RECAP").Range("B2:B127").Value
    End With
    Je n'arrive toujours pas a obtenir la liste et j'ai une erreur d'exécution 424 : Objet requis.

  7. #7
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2015
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 156
    Par défaut
    J'ai réussi. L'initaisation est apparu dans le bouton déroulant en cliquant sur code sur mon UserForm. J'ai pris la première de vos méthodes et ça a fonctionné.
    Néanmoins j'ai plein de duplications. J'aimerais ne prendre en compte que les instances uniques.

    Pour cela j'ai essayé de faire autrement avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    With ComboBoxSex_Reservist
         .AddItem = "M"
         .AddItem = "F"
    End With
    Mais du coup j'ai eu une erreur de compilation "Fonction ou variable attendue"

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/01/2017, 21h23
  2. [XL-2010] Comment transférer les données d'une ListBox vers une TextBox
    Par TSAFACK-M dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/11/2016, 09h00
  3. Comment centrer les items d'une listBox
    Par wChris79 dans le forum VB.NET
    Réponses: 2
    Dernier message: 19/03/2011, 10h23
  4. [AC-2000] Comment récupérer les informations d'une listbox
    Par Remus91 dans le forum IHM
    Réponses: 2
    Dernier message: 26/05/2009, 14h53

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