filtrer champ listbox depuis une feuille

tomover

XLDnaute Nouveau
Bonjour,

Je débute en VBA et je travail à la création d'un formulaire pour enregistrer des données dans une feuille de calcule.

j'ai une feuille où sont listé les commentaires type en colonne A puis une seconde colonne B pour l'appartenance à un groupe (Gr1, Gr2, ...).

J'aimerai afficher dans un champ ListBox tout les commentaires appartenant au groupe (Gr2 par exemple).
Un autre champ ListeBox avec les commentaires Gr3, ....

Je ne trouve pas du tout la syntaxe pour faire cela !

Petite précision, j'aimerai à l'avenir que le fichier où sont stocker ces commentaires soient dans un fichier appart.. mais j'en suis pas là :D

Merci pour votre aide
 

job75

XLDnaute Barbatruc
Re : filtrer champ listbox depuis une feuille

Bonjour tomover, bienvenue sur XLD,

A priori je ne vois pas l'intérêt d'une ListBox.

Je pense que dans l'UserForm deux ComboBoxes feraient mieux l'affaire.

Pour avancer joignez le fichier et donnez des explications sur ce que vous voulez faire avec vos listes.

A+
 

tomover

XLDnaute Nouveau
Re : filtrer champ listbox depuis une feuille

Merci de te pencher sur mon cas ;) j'utilise des listbox car je dois pouvoir sélectionner plusieurs commentaires dans la liste.

Je vais essayer de m'expliquer plus clairement : dans une feuille 'commentaires' j'ai listé tous les commentaires qui me seront utile lors de la conception du formulaire. Je me sert de cette feuille comme une table de bdd (2 colonnes : Groupes et Commentaires)

Dans mon formulaire j'ai plusieurs onglets. Chaque onglet possède un champs listbox pour lister les commentaires relatifs au thème de l'onglet.

d'où mon problème, comment filtrer les commentaires dans ma listbox ?
 

Pièces jointes

  • aide bug.xlsm
    49 KB · Affichages: 59
  • aide bug.xlsm
    49 KB · Affichages: 58
  • aide bug.xlsm
    49 KB · Affichages: 60
Dernière édition:

tomover

XLDnaute Nouveau
Re : filtrer champ listbox depuis une feuille

J'ai trouvé comment faire ! !

Code:
Private Sub UserForm_Initialize()
' LISTE DES COMMENTAIRES
' ----- Onglet 1 -----
Dim i As Integer
Sheets("Commentaires").Activate ' Active la feuille où sont listé tout les commentaires
UserForm1.ListCommentaires1.ColumnCount = 1
j = 0
With Me.ListCommentaires1
    .MultiSelect = fmMultiSelectMulti ' permet de sélectionner plusieurs chose dans la listbox
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row ' compte le nombre de ligne non vide
        If Cells(i, 1).Value Like "*0-10M*" Then 'Filtre les commentaire appartenant uniquement au groupe 0-10M
        .AddItem
        .List(j, 0) = Cells(i, 2) ' Le commentaire à afficher
        j = j + 1
        End If
    Next i
End With
End Sub
Par contre, si vous connaissez une autre méthode pour définir la feuille où sont stocker les éléments à afficher dans le ListBox je suis preneur :
Code:
Sheets("Commentaires").Activate
 
Dernière édition:

tomover

XLDnaute Nouveau
Re : filtrer champ listbox depuis une feuille

Autre question : Si on sélectionne dans la liste plusieurs choix, comment procède-t-on pour les enregistrer dans une même cellule avec un retour à la ligne entre chaque sélection ??
 

Pièces jointes

  • aide bug.xlsm
    52.6 KB · Affichages: 48
  • aide bug.xlsm
    52.6 KB · Affichages: 51
  • aide bug.xlsm
    52.6 KB · Affichages: 54
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 416
Messages
2 088 248
Membres
103 787
dernier inscrit
Sprat