Créer une barre de recherche
Bonjour à tous,
Je cherche à créer une barre de recherche qui me permettra de filtrer mes clients d'un tableau. (en cliquant sur la flèche "filtre" de ma colonne, nous découvrons une barre de recherche, qui en commençant la saisie, ne garde que les clients correspondant ... je recherche à avoir la même barre de recherche, mais directement dans ma feuille Excel).
Est-ce que cela est réalisable ?
Je dispose d'un tableau contenant 200 clients, il est donc difficile de rechercher les clients en faisant défiler le tableau à chaque fois.
Mon objectif serait de posséder une barre de recherche, ou quand je commence à taper des lettres du nom d'un client, la barre de recherche filtre les clients pour ne garder que les correspondants.
Merci d'avance pour votre aide. En espérant avoir réussi à me faire comprendre
Bonjour,
Voici une proposition (qu'il est surement possible d'améliorer...) :
1. Si ce n'est pas déjà fait, passe tes données sous forme de tableau structuré (insertion --> tableau)
2. Insère une ligne avant ton tableau (le coin supérieur gauche doit se trouver en "A2"), qui constituera le champ de recherche
3. Ouvre l'éditeur VBA (alt + F11) et colle dans le module "ThisWorkbook" le code ci-dessous :
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error GoTo Fin
If Sh.Name = "LaFeuilleConcernée" Then 'Nom de feuille à adapter
With Sh.ListObjects("Tableau1") 'Nom de tableau structuré à adapter
If Target.Row = 1 And Target.Column <= .Range.Columns.Count Then
If Not IsEmpty(Target) Then
If IsNumeric(Target) Then
.Range.AutoFilter Field:=Target.Column, Criteria1:=Target.Value 'Essai de filtre sur valeur numérique
Else
If Target.Value = "=" Then
.Range.AutoFilter Field:=Target.Column, Criteria1:="=", Operator:=xlFilterValues
Else
.Range.AutoFilter Field:=Target.Column, Criteria1:="*" & Target.Value & "*", Operator:=xlFilterValues
End If
End If
Else
.Range.AutoFilter Field:=Target.Column
End If
End If
End With
End If
Fin:
End Sub