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 :

charger un listbox à partir d'un autre listbox [XL-365]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2008
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 101
    Par défaut charger un listbox à partir d'un autre listbox
    Bonjour !
    J'ai un userform avec 2 listbox
    Le 1er permet le choix d'une rubrique principale et le 2eme doit se charger à partir de la sélection du 1er. Je joins le tableau pour être plus clair

    Dans le userform :
    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
    Private Sub UserForm_Initialize()
     
    Me.ListBox1.List = Sheets("Affectation").Range("A1:F" & .Cells(Application.Rows.Count, 1).End(xlUp).Row).Value
     
    End Sub
     
    Private Sub ListBox1_Click()
    Dim n As String
    Dim i As Integer
     
    n = ListBox1.Value
    ActiveCell = n
     
    i = Me.ListBox1.ListIndex
     
    ListBox2.List = Sheets("Affectation").Range("B&i:G&i")
     
    End Sub
    Listbox1 : pas de problème mais si je clique sur poisson par exemple rien ne se passe (sauf le systeme qui me dit qu'il ne peut rien pour moi!)
    Mon problème est que je n'arrive pas à charger listbox2 .... je pense que je ne dois pas essayer de le faire dans cette procédure mais je n'ai pas trouver la solution.

    Pourriez-vous m'aider ... en vous remerciant !
    Images attachées Images attachées  

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour Alain,

    Mon problème est que je n'arrive pas à charger listbox2 .... je pense que je ne dois pas essayer de le faire dans cette procédure mais je n'ai pas trouver la solution.
    Tu peux très bien le faire ainsi mais ta seconde liste est horizontale et non verticale il faut la transposer.

    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
    Private Sub UserForm_Initialize()
        With Sheets("Affectation")
            Me.ListBox1.List = .Range("A1:F" & .Cells(Rows.Count, 1).End(xlUp).Row).Value
        End With
    End Sub
     
    Private Sub ListBox1_Click()
    Dim n As String
    Dim i As Integer
    Dim tb
        n = ListBox1.Value
        ActiveCell = n
     
        i = Me.ListBox1.ListIndex + 1
        tb = Sheets("Affectation").Range("B" & i & ":G" & i).Value
        ListBox2.List = Application.Transpose(tb)
     
    End Sub
    Comme ceci, cela devrait fonctionner et il faut tenir compte que l'index de la liste commence à zéro.
    Tu peux aussi faire varier le G en fonction de la quantité des données.

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2008
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 101
    Par défaut Merci ! Résolu !
    Merci beaucoup !!! tu m'as sorti de l'ornière !! effectivement je pensais qu'on pouvait charger avec une liste horizontale !!!

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

Discussions similaires

  1. charger une listbox a partir d'une autre form
    Par craoh dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/08/2014, 19h59
  2. Comment charger une DDL à partir d'une autre DDL
    Par beaudelaire dans le forum ASP.NET MVC
    Réponses: 3
    Dernier message: 06/06/2011, 09h15
  3. Réponses: 2
    Dernier message: 16/10/2008, 08h52
  4. Charger un formulaire à partir d'un autre
    Par nicou50 dans le forum Access
    Réponses: 9
    Dernier message: 14/09/2006, 04h30
  5. Réponses: 20
    Dernier message: 10/05/2006, 11h26

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