Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Filtre par textbox sur listbox

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bonsoir à tous,

Je tourne en rond et j'aurai besoin d'un ptit coup de main, voila le sujet.

Via textbox contenant un nom, Je souhaite affiché dans une listbox, tous les memes noms contenu dans un fichier :

Textbox = Machin /listbox = Machin Rouen, Machin Rennes etc...

Voila ou j'en suis dans le code :

'initialise la listbox
Dim a As Integer
Dim y As Integer
a = ListBox1.ListIndex + 3
For y = textbox1.value
With Sheets("Fichier client")
.Cells(a, y).Value = ListBox1.Value
End With
Next y

Bien entendu cela ne fonctionne pas, par avance merci du coup de main

a+
Yvon
 
Re : Filtre par textbox sur listbox

wilfried_42 à dit:
bonjour yvon

isi tu pouvais ,nous envoyer un bout de ton fichier en enlevant les informations confidentielles

@ te lire

Bonjour Wilfried, le forum,

Je te remercie de ton aide, j'ai trouvé un bout de la solution à mon problème sur un post de MichelXLD :
https://www.excel-downloads.com/threads/filtrer-une-listbox-avec-une-donner-textbox.41740/

Le souci restant est d'arriver à afficher la listbox en multicolonne

Private Sub TextBox1_AfterUpdate()
Dim Plage As Range, Cell As Range
Dim Recherche As String, Adresse As String
Dim Ligne As Variant
Dim C As Object

ListBox1.Clear

Recherche = TextBox1
Sheets(1).Range("A1").Select
Ligne = Sheets(1).Range("C" & "65536").End(xlUp).Row
Set Plage = Sheets(1).Range("C" & "3:" & "c" & Ligne)
With Plage
Set C = .Find(Recherche)
If Not C Is Nothing Then
Adresse = C.Address
Do
If UCase(Recherche) = UCase(Left(C, Len(Recherche))) Then ListBox1.AddItem C
ListBox1.ColumnCount = 20
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> Adresse
End If
End With
End Sub

Par avance merci de ton aide aide
a+
Yvon
 
Re : Filtre par textbox sur listbox

Bonsoir Wilfired, le forum,

Je te remercide ton aide, j'ai un souci l'intégration du code que tu as modifié n'affiche pas sur cinq colonne mais seulement sur une et je ne comprend pas pourquoi, puique j'ai collé ton code, la seule modif faite et de remplacer feuil1 par sheets(1).

je te livre le code :

Private Sub TextBox1_AfterUpdate()
Dim Plage As Range, Cell As Range
Dim Recherche As String, Adresse As String
Dim Ligne As Variant
Dim C As Object

'ListBox1.Clear

Recherche = TextBox1.Value
Range("A1").Select
Ligne = Sheets(1).Range("B" & "65536").End(xlUp).Row
Set Plage = Sheets(1).Range("B" & "2:" & "B" & Ligne)
With Plage
Set C = .Find(Recherche)
If Not C Is Nothing Then
Adresse = C.Address
Do
If UCase(Recherche) = UCase(Left(C, Len(Recherche))) Then
ListBox1.AddItem ""
ListBox1.List(ListBox1.ListCount - 1, 0) = C.Offset(0, -1)
ListBox1.List(ListBox1.ListCount - 1, 1) = C
ListBox1.List(ListBox1.ListCount - 1, 2) = Format(C.Offset(0, 1), "### ##0.00")
ListBox1.List(ListBox1.ListCount - 1, 3) = C.Offset(0, 2)
ListBox1.List(ListBox1.ListCount - 1, 4) = C.Offset(0, 3)
End If
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> Adresse
End If
End With
End Sub

Par avance mercide ton aide

a+
Yvon,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
533
Réponses
7
Affichages
494
Réponses
6
Affichages
818
Réponses
3
Affichages
964
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…