Liste déroulante recherche par nom avec un mot au milieux du nom

Bonjour,

Je cherche à pouvoir rechercher un nom dans une base de données à partir de n'importe qu'elle mots du nom exemple betonnière s190

je voudrais que si je tape s190 ça trouve betonnière s190 on m'as déjà donner un code VBA

vba

J'ai modifier pour que ça affiche dans ma cellule que ça vas chercher dans mon classeur Base de données mais ça me mets une erreur ici

vba2

Mais je ne m'y connais pas du tout en vba quelqu'un aurais une idée ?

Ah je viens de remarquer que le code ne enregistre pas quand je ferme le dossier alors le voilà

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([D19], Target) Is Nothing And Target.Count = 1 Then
Set f = Sheets("feuil2")
a = Application.Transpose(f.Range("A1:A" & f.[A65000].End(xlUp).Row))
Me.ComboBox1.List = a
Me.ComboBox1.Height = Target.Height + 3
Me.ComboBox1.Width = Target.Width
Me.ComboBox1.Top = Target.Top
Me.ComboBox1.Left = Target.Left
Me.ComboBox1 = Target
Me.ComboBox1.Visible = True
Me.ComboBox1.Activate
Else
Me.ComboBox1.Visible = False
End If
End Sub

Private Sub ComboBox1_Change()
If Me.ComboBox1 <> "" And IsError(Application.Match(Me.ComboBox1, a, 0)) Then
Me.ComboBox1.List = Filter(a, Me.ComboBox1.Text, True, vbTextCompare)
Me.ComboBox1.DropDown
End If
ActiveCell.Value = Me.ComboBox1
End Sub
Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Me.ComboBox1.List = a
Me.ComboBox1.Activate
Me.ComboBox1.DropDown
End Sub

Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then ActiveCell.Offset(1).Select
End Sub

Bonsoir,

Pour que le code VBA reste dans ton fichier à l'enregistrement il faut déjà..... l'enregistrer en .XLSM et non en .XLSX comme apparemment tu l'a fais

Ensuite voir le fichier joint si c'est OK pour toi pas oublier d'activer les macros pour que cela fonctionne

Slts

Rechercher des sujets similaires à "liste deroulante recherche nom mot milieux"