Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Atteindre la ligne après recherche par mot clé

  • Initiateur de la discussion Initiateur de la discussion missonbody
  • Date de début Date de début

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 !

M

missonbody

Guest
Bonjour

je débute dans le VBA et j'ai trouvé sur le net un code pour faire une recherche par mot clé qui sort toutes les correspondances dans un fichier à partir d'un mot clé. le hic, c'est qu'une fois les correspondances trouvées, il n'y a que l'option : Visualiser la fiche.

Serait-il possible d'inclure une fonction pour qu'en cliquant sur une correspondance, Excel nous ramène directement à la ligne en question? Au lieu se simplement m'informer que la correspondance se trouva à la ligne 54 de l'onglet 1.

J'ai joint une partie de mon fichier de recherche

merci pour votre aide
 

Pièces jointes

Re : Atteindre la ligne après recherche par mot clé

Bonjour à tous,

Bienvenue sur XLD

Peux-tu essayer :

VB:
.....
Call MsgBox("Vous avez sélectionnée la feuille : " & nomfeuille _
            & vbCrLf & "" _
            & vbCrLf & "Ligne N° : " & ligne1 _
            & vbCrLf & "" _
            , vbInformation, Application.Name)
Sheets(nomfeuille).Activate
Rows(ligne1).Select

A+ à tous
 
Re : Atteindre la ligne après recherche par mot clé

Petit ajout

est-il possible que le renvoie se fasse par double-clic dans les résultats de recherche sans devoir aller dans l'onglet "Visualiser la ligne" puis par le Msg Box?
 
Re : Atteindre la ligne après recherche par mot clé

Bonjour à tous,

Rajoute ce bout de code dans le module de l'USF :

VB:
Private Sub ListView1_DblClick()
    With ListView1
        For i = 1 To .ListItems.Count
If .ListItems(i).Selected = True Then
                nomfeuille = Mid(.ListItems(i).Key, 1, InStr(1, .ListItems(i).Key, "££") - 1)
                ligne1 = Mid(.ListItems(i).Key, InStr(1, .ListItems(i).Key, "££") + 2, 50)
nuitem = i
                Exit For
            End If
        Next
    End With
    Sheets(nomfeuille).Activate
    Rows(ligne1).Select
    Unload Me
End Sub

A+ à tous
 
Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

M
Réponses
13
Affichages
2 K
Micka52
M
A
Réponses
12
Affichages
7 K
atoborn_14
A
A
Réponses
10
Affichages
8 K
A
A
Réponses
1
Affichages
1 K
G
Réponses
7
Affichages
2 K
gusmp29200
G
D
Réponses
2
Affichages
6 K
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…