chercher le texte et sélectionner la ligne

  • Initiateur de la discussion Initiateur de la discussion olivierd
  • 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 !

O

olivierd

Guest
bonjour à toi ami lecteur(rice),

Je cherche un code vba qui me permette de
chercher un texte dans une colonne ' chercher 'montexte'
puis de sélectionner la ligne où se trouve 'montexte'
😱
pourrais-tu m'aider sympatique surfeur(euse) ?

J'ai commencé ainsi:
Sub Macro()
Columns('A:A').Select
Selection.Find(What:='montexte', After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False).Activate

et c'est là que je n'arrive pas à lui (le monstre)
indiquer de sélectionner la ligne où se trouve 'montexte'

cordialement
 
Pascal76 écrit:
Sub Recherche()

Dim c As Range
Dim Maligne As Integer

Set c = Sheets('Feuil1').Range('A1:A6536').Find('toto')
Maligne = c.Row
Rows(Maligne).Select

End Sub

Je voulais juste demander une explication concernant ce code
C'est une question basique parce que je commence : que signifie le 'Maligne=c.Row' ?
 
Bonjour

c est la cellule où se trouve le mot recherché

c.row indique la ligne de la cellule c

Attention comme je l'indiquais à Olivier je n'ai pas fait ici de gestion d'erreur si le texte cherché n'existe pas dans la colonne. En effet dans ce cas c devient Nothing et la macro bug sur Maligne=c.row

Bonne journée
 
Bonjour Marianne, Olivier, Pascal, le Forum

Et puisque Pascal parle de gestion d'erreur, pourquoi ne pas en mettre une dans la foulée...

Option Explicit
Option Compare Text 'pour chercher MAJ ou min indifféremment

Sub Recherche()
Dim Cell As Range
Dim SearchedString As String

SearchedString = InputBox('Saisir le mot à chercher')
If SearchedString = '' Then Exit Sub

   
Set Cell = Sheets('Feuil1').Columns('A:A').Find(SearchedString)
       
If Not Cell Is Nothing Then
            Rows(Cell.Row).Select
       
Else
            MsgBox 'le mot ' & SearchedString & ' inexistant dans la colonne ''A'''
       
End If
End Sub

On notera l'Option Compare Text, qui n'est pas vraiment utile ici puisque 'find' n'a pas l'argument MatchCase défini à True pour que la recherche respecte la casse. (La valeur par défaut est False). Mais très utile dans d'autres cas de recherche par boucle..

Bonne Journée
@+Thierry
 
- 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

Réponses
2
Affichages
586
Réponses
3
Affichages
635
Réponses
12
Affichages
1 K
V
Réponses
4
Affichages
3 K
Valentin94
V
A
Réponses
9
Affichages
3 K
Retour