TextBox Change si on appui sur "Entrer"

Salut tout le monde.

Je me suis inspiré du cours sur les recherches avec VBA fait par Sébastien sur le blog, et j'ai tenté d’adapter le code afin que la ligne soit sélectionnée au lieu d'y changer la couleur, lorsque je cherche mon mot dans un textbox.

Ca fonctionne mais le problème c'est que le fait de sélectionner la ligne vire le curseur du textbox et m'empêche de rajouter d'autres caractère à ma recherche.

Est-il possible d'activer la lecture du text dans la textbox après validation par la toucher ENTRER ?

Option Compare Text

Private Sub TextBox1_Change()

    If TextBox1 <> "" Then
        For ligne = 113 To 250
            If Cells(ligne, 2) Like "*" & TextBox1 & "*" Then
                Cells(ligne, 2).EntireRow.Select

            End If
        Next
    End If

End Sub

Merci d'avance et bon dimanche

Salut,

Un bout de fichier n'aurait pas été du luxe (je te l'avais déjà dit le 20 janvier sur notre autre fil https://forum.excel-pratique.com/excel/macro-masquer-ligne-si-une-des-cellules-de-la-plage-0-t87894.html)

Si je t'ai bien compris, tu trouveras dans le fichier ci-joint une macro qui devrait répondre à ton attente.

Attention : Si tu as deux fois ou plus le texte recherché, seule la dernière occurrence est marquée. Faut-il trouver une solution à ce problème ?

La casse n'a pas d'importance.

Cordialement.

183essai.xlsm (19.04 Ko)

Salut Yvouille,

Ca marche nickel merci !

J'ai pas mi le fichier car c'était celui de cet article : https://www.blog-excel.com/creer-un-champ-de-recherche-vba/

J'ai modifié mon code finalement, le textbox n'est plus en change mais en KeyDown, on gagne l'utilisation d'un bouton OK pour valider

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
    If TextBox1 <> "" Then
        For ligne = 113 To 250
            If Cells(ligne, 2) Like "*" & TextBox1 & "*" Then
                Cells(ligne, 2).EntireRow.Select

            End If
        Next
    End If
    End If
End Sub

Bonsoir,

L'évènement AfterUpdate se déclenche en appuyant sur Entrée...

Cordialement.

Salut,

Comment écrire çà je suis pas encore au point sur les événements

On n'écrit pas les déclarations de procédures d'évènements (par sécurité) : tu te places sur TextBox_Change (évènement par défaut) et dans la liste déroulante de droite tu vas chercher l'évènement souhaité, et c'est VBA qui écrit la déclaration... (si tu ne te sers pas de Change, tu l'effaces ensuite).

Cordialement.

Rechercher des sujets similaires à "textbox change appui entrer"