Recherche de ligne dans un tableau excel
Résolu/Fermé
A voir également:
- Rechercher une ligne dans excel
- Rechercher ou entrer l'adresse - Guide
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Formule excel - Guide
- Déplacer une colonne excel - Guide
3 réponses
Raymond PENTIER
Messages postés
58330
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
28 mars 2024
17 087
5 juil. 2009 à 21:43
5 juil. 2009 à 21:43
Et tu veux absolument une macro pour ça ?
La fonction RECHERCHEV rend le même service, en beaucoup moins compliqué ...
La fonction RECHERCHEV rend le même service, en beaucoup moins compliqué ...
Mike-31
Messages postés
18309
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
14 mars 2024
5 072
5 juil. 2009 à 22:22
5 juil. 2009 à 22:22
Salut,
Ah je vois que tu monde est arrivé sur la discussion, je mets tout de même un code basique facile à modifier, sans vouloir griller la politesse à mes amis que je salut avant de partir vers le soleil
si j'ai bien tout compris, sinon ignorez cette proposition
Sub test()
Range("A65536").End(xlUp).Select 'sélectionne la première cellule non vide colonne A
Do While ActiveCell <> Cells(1, ActiveCell.Column) 'boucle jusqu'a la première cellule de la colonne
Do While ActiveCell.Value <> "O" 'entre parenthèse le mot à chercher
If ActiveCell = Cells(1, ActiveCell.Column) Then Exit Sub 'si arrive à la première cellule de la colonne sorti de procédure
ActiveCell.Offset(-1, 0).Select
Loop
ActiveCell = ActiveCell.Offset(1, 0) 'si mot trouvé, copie la cellule inférieure
Loop
End Sub
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
Ah je vois que tu monde est arrivé sur la discussion, je mets tout de même un code basique facile à modifier, sans vouloir griller la politesse à mes amis que je salut avant de partir vers le soleil
si j'ai bien tout compris, sinon ignorez cette proposition
Sub test()
Range("A65536").End(xlUp).Select 'sélectionne la première cellule non vide colonne A
Do While ActiveCell <> Cells(1, ActiveCell.Column) 'boucle jusqu'a la première cellule de la colonne
Do While ActiveCell.Value <> "O" 'entre parenthèse le mot à chercher
If ActiveCell = Cells(1, ActiveCell.Column) Then Exit Sub 'si arrive à la première cellule de la colonne sorti de procédure
ActiveCell.Offset(-1, 0).Select
Loop
ActiveCell = ActiveCell.Offset(1, 0) 'si mot trouvé, copie la cellule inférieure
Loop
End Sub
A+
Mike-31
Un problème sans solution est un problème mal posé (Einstein)
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 681
5 juil. 2009 à 21:48
5 juil. 2009 à 21:48
bonjour
Comme toujours il y a plusieurs façon de le faire mais ceci me parait le plus simple :
Tu recherches ta donnée dans la colonne 1 et si elle est trouvée "le contenu de la cellule qui suit celle qui contient le code sera copié et collé (= plus simple) dans la cellule où se trouve le curseur" (ActiveCell).
Comme toujours il y a plusieurs façon de le faire mais ceci me parait le plus simple :
Dim sel As Variant Set sel = Columns(1).Cells.Find("ta recherche") If Not sel Is Nothing Then ActiveCell.Value = sel.Offset(0, 1).Value
Tu recherches ta donnée dans la colonne 1 et si elle est trouvée "le contenu de la cellule qui suit celle qui contient le code sera copié et collé (= plus simple) dans la cellule où se trouve le curseur" (ActiveCell).