Trouver dans une feuille et afficher dans une TextBox

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Papynou

XLDnaute Occasionnel
Bonjour,

J'ai essayé d'utiliser le code suivant pour trouver dans une feuille, une cellule qui contient l'objet de ma recherche.
Lui même est défini dans une TexBox et validé par un CommandButton.
Le résultat et les 4 Colonnes de droite devant s'afficher dans une ListBox.

Pensant déjà que j'étais au bout, j'ai pensé que je devrais ajouter un message d'erreur du style "Recherche infructueuse" mais je n'ai même pas encore réussi à afficher la recherche 😀

Private Sub Cmd_Recherche_Click()
Dim Plage As Range, Cell As Range
Dim Feuille As Worksheet
Dim Recherche As String
Dim Ligne As Integer
Dim Tablo(250, 14)
Dim Lig As Integer
Dim x As Integer
ListBox_Recherche.ColumnCount = 4
Lig = 0
ListBox_Recherche.Clear
Recherche = Txt_Recherche
If Recherche = "" Then Exit Sub
For Each Feuille In Worksheets
Ligne = Worksheets(Feuille.Name).Range("A65536").End(xlUp).Row
Set Plage = Worksheets(Feuille.Name).Range("A2:A" & Ligne)
For Each Cell In Plage
If Cell.Value Like Recherche & "*" Then
For x = -1 To 12
Tablo(Lig, x + 1) = Cell.Offset(0, x).Value
Next x
ListBox_Recherche.List() = Tablo
Lig = Lig + 1
End If
Next Cell
Next Feuille
End Sub

Et pourtant, j'y croyais 😡

Comme d'habitude, je suis avide de bons conseils.
Merci


PS. J'ai pensé à joindre mon fichier 😎
 
Dernière édition:
Re : Trouver dans une feuille et afficher dans une TextBox

Salut Papynou,
j'ai modifié ton code :
Private Sub Cmd_Recherche_Click()
Dim Plage As Range, Cell As Range
Dim Feuille As Worksheet
Dim Recherche As String
Dim Ligne As Integer
Dim Tablo(250, 14)
Dim Lig As Integer
Dim x As Integer
ListBox_Recherche.ColumnCount = 4
Lig = 0
ListBox_Recherche.Clear
Recherche = Txt_Recherche
If Recherche = "" Then Exit Sub
For Each Feuille In Worksheets
Ligne = Worksheets(Feuille.Name).Range("A65536").End(xlUp).Row
Set Plage = Worksheets(Feuille.Name).Range("A2:A" & Ligne)
For Each Cell In Plage
If Cell.Value Like Recherche & "*" Then
For x = 0 To 12
Tablo(Lig, x + 1) = Cell.Offset(0, x).Value
Next x
ListBox_Recherche.List() = Tablo
Lig = Lig + 1
End If
Next Cell
Next Feuille
End Sub

teste et dit moi
@
RICO
 
Re : Trouver dans une feuille et afficher dans une TextBox

bonjour papynou

comme tu parlais de renvoyer le résultat + colonnes à droite j'ai donc pensé que ca faisait 5 colonnes.

j'ai aussi un peu repris ton code (tu renvoyais le tablo dans la listbox apres chaque scanne de feuille, un peu inutile).

j'ai aussi placé un message pour les recherches infructueuses.
Code:
Private Sub Cmd_Recherche_Click()
Dim Plage As Range, Cell As Range
Dim Feuille As Worksheet
Dim Recherche As String
Dim Ligne As Integer
Dim Tablo(250, 14)
Dim Lig As Integer
Dim x As Integer

ListBox_Recherche.ColumnCount = 5
Lig = 0
ListBox_Recherche.Clear
Recherche = Txt_Recherche

If Recherche = "" Then Exit Sub

For Each Feuille In Worksheets
    Ligne = Worksheets(Feuille.Name).Range("A65536").End(xlUp).Row
    Set Plage = Worksheets(Feuille.Name).Range("A2:A" & Ligne)
    For Each Cell In Plage
        If Cell.Value Like Recherche & "*" Then
            For x = 0 To 5
                Tablo(Lig, x) = Cell.Offset(0, x).Value
            Next x
            Lig = Lig + 1
        End If
    Next Cell
Next Feuille

If Lig = 0 Then
    MsgBox "Recherche infructueuse"
Else
    ListBox_Recherche.List() = Tablo
End If
    
End Sub
salut

edition : oups pas rafraichit, salut rico 🙂
 
Re : Trouver dans une feuille et afficher dans une TextBox

Bonjour rico1972

Ca s'affiche bien mais dans la ListBox ne s'affichent que ma recherche suivie de deux autres éléments alors que je voudrais que ma recherche soit suivie de 4. De plus, il me semble que la première colonne de la ListBox est vide.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
734
Retour