Recherche de ligne dans un tableau excel

Résolu
lemateux -  
 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
Configuration: Windows XP
Firefox 2.0

3 réponses

  1. Raymond PENTIER Messages postés 58226 Date d'inscription   Statut Contributeur Dernière intervention   17 490
     
    Et tu veux absolument une macro pour ça ?
    La fonction RECHERCHEV rend le même service, en beaucoup moins compliqué ...
    4
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    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)
    1
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    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).
    0
    1. lematheux
       
      salut
      un grand merci à vous pour votre proposition salvatrice de solution !
      0