Bonjour à tous et merci à tous pour votre aide !
J'ai un tableau Excel inséré dans un UserForm à l'aide d'un ListBox.
Je cherche à ajouter un filtre dans la ListBox afin de n'afficher que les valeurs qui contiennent par exemple "325" choisie dans un TextBox.
A terme je souhaite sélectionner une des lignes dans ce ListBox et mettre en gras la ligne correspondante dans la feuille "Essai". Cela ressemble à ça :
Je me suis basé sur le code que j'ai trouvé sur cette discussion sur le forum qui m'a beaucoup aidé : Insérer un tableau excel dans un UserForm
(Merci à eux).
Avez vous des pistes pour pouvoir filtrer ma ListBox ?
J'ai ajouté le fichier Excel en PJ.
Merci d'avance pour votre aide.
Axel
PS :
Voila le code source :
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
25
26
27 Private Sub CommandButton1_Click() With ListBox1 For i = 0 To .ListCount - 1 If .Selected(i) = True Then mess = mess & i + 1 + 1 & vbCrLf ' tu peut mettre 2 bien entendu Next End With MsgBox mess End Sub Private Sub ListBox1_Click() MsgBox ListBox1.ListIndex End Sub Private Sub UserForm_Activate() Dim plage As Range, i As Long, large With Sheets("Essai") Set plage = .Range("A1").CurrentRegion.Offset(1, 0) For i = 1 To plage.Columns.Count: large = large & ";" & Round(plage.Columns(i).Width): Next ' on capture la largeur des colonnes large = Mid(large, 2, 200) With Me.ListBox1 .RowSource = plage.Address .ColumnHeads = True .ColumnWidths = large .ColumnCount = plage.Columns.Count .ListStyle = 1 .MultiSelect = 1 End With End With End Sub
Partager