XL 2010 barre de recherche Feuil1 / Données Feuil2

santury

XLDnaute Nouveau
Bonjour à tous,

Je travaille dans les ressources humaines et manipule pas mal de données salariales assez sensibles.

j'ai essayé d'adapter le code du tutoriel ci-contre à mes besoins;
(http://www.blog-excel.com/creer-un-champ-de-recherche-vba/)
il s'agit me concernant de rechercher dans la colonne A d'une seconde feuille les informations
et de les lister de la même façon en feuille 1.

Je tenais à recourir à cette barre de recherche pour éviter les allers retours dans la base de donnée et pour éviter qu'un salarié la modifie par mégarde.

Lorsque j'utilise le code ci-contre :

Code:
Option Compare Text
Private Sub TextBox1_Change()
   
    Application.ScreenUpdating = False
   
    Dim rng As Range
    Set rng = Worksheets("FORMULES").Range("A:A")
   
 If TextBox1 <> "" Then
     If Cells(ligne, 1) Like "*" & TextBox1 & "*" Then
                ListBox1.AddItem Cells(ligne, 1)
            End If
        End If
End Sub

j'obtiens une erreur 1004.

Je me doute qu'il s'agit d'une question de définition de l'espace à analyser / renseigner mais malheureusement je débute tout juste en VBA et malgré mes premières recherches, cela dépasse encore mes capacités...

Pourriez-vous m'aider s'il vous plait? :)

Par avance, merci à tous!

PS: j'ai tenté de retirer la part du code sur la colorisation puisqu'elles sont sur une autre page.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Bonjour santury, et bienvenue sur le forum

Sans voir le fichier pour pouvoir tester.

il manque la boucle For ligne= 2 To ............ dans ton code
... et ne pas oublier: Next ligne

Code:
    If TextBox1 <> "" Then
        For ligne = 2 To 24
            If Cells(ligne, 1) Like "*" & TextBox1 & "*" Then
                ListBox1.AddItem Cells(ligne, 1) 
            End If
        Next ligne
    End If

à+
Philippe
 

santury

XLDnaute Nouveau
Bonsoir PhLaurent55

Code:
Option Compare Text



Private Sub TextBox1_Change()
Dim ligne As Long, DL As Long
    Application.ScreenUpdating = False
    DL = Sheets("FORMULES").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
    ListBox1.Clear
   If TextBox1 <> "" Then
    ListBox1.Clear
        For ligne = 6 To DL
            If Sheets("FORMULES").Cells(ligne, 1) Like "*" & TextBox1 & "*" Then
                ListBox1.AddItem Sheets("FORMULES").Cells(ligne, 1)
            End If
        Next ligne
    End If
End Sub

tout marche,

merci pour l'aide =)
 

Discussions similaires

Statistiques des forums

Discussions
312 103
Messages
2 085 306
Membres
102 859
dernier inscrit
Diallokass