Recherche de ligne dans un tableau excel
Résolu
lemateux
-
lematheux -
lematheux -
Bonjour,
je cherche à définir un macro sur excel pouvant rechercher une ligne selon le code contenu dans sa première cellule, et si la ligne est retrouvée le contenu de la cellule qui suit celle qui contient le code sera copié et colé dans la cellule où se trouve le curseur.
Je ne suis qu'un pauvre débuttant sur excel !
Merci d'avance pour votre aide
je cherche à définir un macro sur excel pouvant rechercher une ligne selon le code contenu dans sa première cellule, et si la ligne est retrouvée le contenu de la cellule qui suit celle qui contient le code sera copié et colé dans la cellule où se trouve le curseur.
Je ne suis qu'un pauvre débuttant sur excel !
Merci d'avance pour votre aide
A voir également:
- Rechercher une ligne dans excel
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Partager photos en ligne - Guide
- Rechercher ou saisir une url - Guide
3 réponses
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é ...
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)
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).