[Excel] Fonction de recherche petit soucis
Résolu
yyannd
-
yy -
yy -
Bonjour,
Je voudrais faire une recherche d'une valeur saisie dans un inputbox afin de vérifier si cette valeur est présente ou non dans ma feuille excel.
J'ai réussi à coder la chose comme ceci :
Sub recherche()
Dim rngTrouve As Range
Dim strChaine As String
strChaine = InputBox("Nom à rechercher :")
Set rngTrouve = ActiveSheet.Columns(1).Cells.Find(what:=strChaine)
If rngTrouve Is Nothing Then
MsgBox "Pas trouvé"
Else
Cells.Find(what:=strChaine).Activate
End If
Set rngTrouve = Nothing
End Sub
Cependant si une valeur existe plusieurs fois, il se positionne dans la 1ere cellulle ou il la trouvé puis la recherche est terminée, moi je voudrais compléter la chose c'est à dire que si la valeur existe dans une autre celulle qu'il la trouve et se positionne dedans, c'est un peu comme la fonction 'SUIVANT' lorsqu'on fait une recherche ctrl+f sur excel..
Merci de m"éclairer
Je voudrais faire une recherche d'une valeur saisie dans un inputbox afin de vérifier si cette valeur est présente ou non dans ma feuille excel.
J'ai réussi à coder la chose comme ceci :
Sub recherche()
Dim rngTrouve As Range
Dim strChaine As String
strChaine = InputBox("Nom à rechercher :")
Set rngTrouve = ActiveSheet.Columns(1).Cells.Find(what:=strChaine)
If rngTrouve Is Nothing Then
MsgBox "Pas trouvé"
Else
Cells.Find(what:=strChaine).Activate
End If
Set rngTrouve = Nothing
End Sub
Cependant si une valeur existe plusieurs fois, il se positionne dans la 1ere cellulle ou il la trouvé puis la recherche est terminée, moi je voudrais compléter la chose c'est à dire que si la valeur existe dans une autre celulle qu'il la trouve et se positionne dedans, c'est un peu comme la fonction 'SUIVANT' lorsqu'on fait une recherche ctrl+f sur excel..
Merci de m"éclairer
A voir également:
- [Excel] Fonction de recherche petit soucis
- Fonction si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Trier du plus petit au plus grand excel - Guide
2 réponses
Bonjour,
Essaye avec ..
A chaque appui sur le bouton la sélection passe sur l'occurrence suivante jusque la dernière
A+
Essaye avec ..
Sub recherche() Dim rngTrouve As Range Static strChaine As String Static Ligne As Long If Ligne = 0 Then strChaine = InputBox("Nom à rechercher :") If strChaine = "" Then Exit Sub Ligne = 1 End If For Each rngTrouve In Range("A" & Ligne & ":A" & [A65536].End(xlUp).Row + 1) If LCase(rngTrouve.Text) = LCase(strChaine) Then rngTrouve.Activate Ligne = rngTrouve.Row + 1 Exit Sub End If Next MsgBox "Plus d'occurence ou pas trouvé" Ligne = 0 Set rngTrouve = Nothing End SubJe suppose que tu appel avec un bouton ?
A chaque appui sur le bouton la sélection passe sur l'occurrence suivante jusque la dernière
A+