listbox multiples

MathildeQ

XLDnaute Nouveau
Bonjour,
j'ai créé une listbox1 qui dépend d'une autre listbox2 et je souhaiterais qu'en cliquant sur l'objet voulu dans la listbox1 il me remplisse 3 listbox qui représente les caractéristique de mon objet listbox1.
Par exemple:
j'ai un tableau :
http://img827.imageshack.us/i/sanstitreac.jpg/ Uploaded with ImageShack.us

Dans ma listbox2 s'affiche (acte, famille, superfamille) quand je clique sur acte il affiche la liste des actes dans listbox1 et là je souhaiterais que dans la listbox3 il affiche les actes sélectionnés, dans listbox4 leur famille et dans listbox5 la superfamille.

Je vous copie le code car je peux pas joindre le fichier exemple même zipper ça prend trop de place.

Code:
Option Explicit
Dim NomLBindex As Integer
Dim LRecherche As Integer

Private Sub UserForm_Initialize()

Dim L As Integer
Dim Plage As String

CommandButton1.Visible = False

L = Sheets("Feuil2").Range("B65536").End(xlUp).Row
Plage = Sheets("Feuil2").Range("B2:D" & L).Address
ListBox1.RowSource = "Feuil2!" & Plage

  With Me
    UpdateListBox .ListBox2, -1
 End With

End Sub

Private Sub CommandButton1_Click()
    ListBox3.Clear
    
    Dim compt As Integer
For compt = 1 To (ListBox1.ListCount - 1)
        If ListBox1.Selected(compt) = True Then
            ListBox3.AddItem ListBox1.List(compt)
        End If
    Next compt

End Sub

Private Sub ListBox2_Change()
' Mise à jour des items dans la ListBox2 qui correspond a la catégorie choisi
        UpdateListBox Me.ListBox1, Me.ListBox2.ListIndex
End Sub

Private Sub UpdateListBox(Parametres As MSForms.ListBox, IndexValue As Integer)
Dim LastInputRow As Integer, ColumnIndex As Integer, InputRange As Range
' Les données commencent à la ligne 3
Const FirstInputRow As Integer = 2
' Détermine depuis quelle colonne on prend la liste des items
        ColumnIndex = IndexValue + 2
' Détermine la dernière ligne de la colonne sélectionnée et la plage correspondante
        LastInputRow = Cells(FirstInputRow, ColumnIndex).End(xlDown).Row
        Set InputRange = ActiveSheet.Range(Cells(FirstInputRow, ColumnIndex), Cells(LastInputRow, ColumnIndex))
        With Parametres
                .ColumnHeads = True ' Affiche les en-têtes de colonne
                .RowSource = InputRange.Address ' Spécifie la source de données
                .ListIndex = 0 ' Sélectionne le premier item
        End With
        Set InputRange = Nothing
End Sub

Private Sub ListBox1_Click()

CommandButton1.Visible = True

End Sub

Private Sub UserForm_Activate()

       ListBox1.MultiSelect = fmMultiSelectExtended
       
End Sub
 

kjin

XLDnaute Barbatruc
Re : listbox multiples

Bonjour,
Désolé, comme disait l'autre, quand ma voiture est en panne, je n'envoie pas sa photo à mon garagiste
Un fichier exemple compressé avec 20 lignes de données, un formulaire contenant 3 listbox et un bouton et qq mots d'explication, représente à peine 15 ko
A+
kjin
 
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : listbox multiples

Bonjour Mathilde, Kjin, bonjour le forum,

Je sais pas pourquoi moi je te voyais plutôt en Harley Davidson Kjin... Cheveux aux vents et cuir sur le dos avec sur le casque le logo XLD. Quelle déception ! Mais sinon tu as raison moi non plus je ne montre pas la photo de ma voiture au garagiste sinon il me redirige tout net vers une casse...
 

MathildeQ

XLDnaute Nouveau
Re : listbox multiples

Re,
Et bien figurez vous que c'est exactement ce que j'avais fait et mon fichier faisait 295 ko!!
J'ai recommencé un autre fichier (le même en fait) et il fait 27 ko.
Donc désolé il y a du y avoir un bug avec le premier lol.
Veuillez trouver ci joint mon fichier exemple.
 

Pièces jointes

  • fichier_exemple.xls
    26.5 KB · Affichages: 60
  • fichier_exemple.xls
    26.5 KB · Affichages: 65
  • fichier_exemple.xls
    26.5 KB · Affichages: 68

MathildeQ

XLDnaute Nouveau
Re : listbox multiples

Humm en fait je voudrais le faire en multi sélections.
Je voudrais pouvoir sélectionner plusieurs code dans la listbox2 et que toutes leurs caractéristiques s'affichent dans les 3 autres listbox.
 
Dernière édition:

MathildeQ

XLDnaute Nouveau
Re : listbox multiples

Je vous joint le fichier que j'ai modifié pour faire de la multiselection et afficher le résultat dans les 3 listbox mais cela ne fonctionne pas.
J'ai créé un commandbutton car apparemment dans le listbox_click on ne peut pas traiter la multisélection (d'après ce que j'ai pu lire sur le forum).Pourriez vous m'aider s'il vous plait?
cordialement,
Mathilde.

ps: S'il vous plait aidez moi!! :)
 

Pièces jointes

  • mathilde2.xls
    34.5 KB · Affichages: 57
  • mathilde2.xls
    34.5 KB · Affichages: 53
  • mathilde2.xls
    34.5 KB · Affichages: 54
Dernière édition:

Discussions similaires

Réponses
29
Affichages
971
Réponses
17
Affichages
854
Réponses
4
Affichages
218

Statistiques des forums

Discussions
312 361
Messages
2 087 627
Membres
103 608
dernier inscrit
rawane