Créer un champ de recherche en VBA

Dans ce tutoriel, vous apprendrez à mettre en place un champ de recherche qui affiche et actualise les résultats à chaque caractère entré dans le champ (TextBox).

Les résultats peuvent être affichés de différentes manières (dans cet exemple, un affichage des résultats sur la feuille et dans une ListBox) :

champ-recherche - champ-de-recherche-vba

Ce type de champ de recherche est utilisé par exemple dans les applications Stock-Pratique et Contacts-Pratique.

Tuto vidéo

Pour comprendre comment créer ce champ de recherche et afficher les résultats instantanément, consultez cette vidéo :

Code VBA et fichier

Le code VBA de cette vidéo est le suivant :

Option Compare Text

Private Sub TextBox1_Change()
   
    'www.excel-pratique.com/fr/astuces_vba/champ-de-recherche-vba.php
    Application.ScreenUpdating = False
   
    Range("A2:A24").Interior.ColorIndex = 2
    ListBox1.Clear
   
    If TextBox1 <> "" Then
        For ligne = 2 To 24
            If Cells(ligne, 1) Like "*" & TextBox1 & "*" Then
                Cells(ligne, 1).Interior.ColorIndex = 43
                ListBox1.AddItem Cells(ligne, 1)
            End If
        Next
    End If
   
End Sub

Et le fichier de cet exemple : champ_recherche_vba.xls