Bonjour à tous,
Je m'explique : j'ai un userform dans lequel j'ai un textbox qui me permet en tapant les premières lettres du nom recherché d'afficher dans un listbox à 2 colonnes les nom et prénom des personnes commençant par ces mêmes lettres.
Mon pb est que dès que je tape les premières lettres, la listbox ne contient plus que les noms sans les prénoms (ce qui est génant ayant des personnes portant le même nom).
Après plusieurs tentative, je ne parviens pas à résoudre mon problème.
Merci pour vos lumières.
Ci dessous mon bout de code :
Private Sub UserForm_Initialize()
Me.ListBox1.ColumnWidths = temp
With Sheets("bdd")
Me.ListBox1.List = .Range("A2:B" & .[A65000].End(xlUp).Row).Value
End With
a = Me.ListBox1.List
NbCol = UBound(a, 2) - LBound(a, 2) + 1 ' nb de colonnes
Call tri(a, LBound(a), UBound(a), NbCol, 0)
Me.ListBox1.List = a
End Sub
Private Sub TextBox1_Change()
ListBox1.Clear
For Each Cel In ThisWorkbook.Worksheets("bdd").Range("nom")
If LCase(Cel.Value) Like TextBox1.Text & "*" Then
ListBox1.AddItem Cel.Value
End If
Next Cel
End Sub
.
Je m'explique : j'ai un userform dans lequel j'ai un textbox qui me permet en tapant les premières lettres du nom recherché d'afficher dans un listbox à 2 colonnes les nom et prénom des personnes commençant par ces mêmes lettres.
Mon pb est que dès que je tape les premières lettres, la listbox ne contient plus que les noms sans les prénoms (ce qui est génant ayant des personnes portant le même nom).
Après plusieurs tentative, je ne parviens pas à résoudre mon problème.
Merci pour vos lumières.
Ci dessous mon bout de code :
Private Sub UserForm_Initialize()
Me.ListBox1.ColumnWidths = temp
With Sheets("bdd")
Me.ListBox1.List = .Range("A2:B" & .[A65000].End(xlUp).Row).Value
End With
a = Me.ListBox1.List
NbCol = UBound(a, 2) - LBound(a, 2) + 1 ' nb de colonnes
Call tri(a, LBound(a), UBound(a), NbCol, 0)
Me.ListBox1.List = a
End Sub
Private Sub TextBox1_Change()
ListBox1.Clear
For Each Cel In ThisWorkbook.Worksheets("bdd").Range("nom")
If LCase(Cel.Value) Like TextBox1.Text & "*" Then
ListBox1.AddItem Cel.Value
End If
Next Cel
End Sub
.