Recherche sur excel

Résolu
Bonjour,
Je voudrais savoir si vous auriez un exemple de macros qui me donnerait la possibilité de rechercher une donnée (genre une référence)dans plusieurs feuilles d'un même fichier excel.
Quid !!! dur dur ;)))
Merci pour votre aide ou conseil.
Ticosé
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  1. Tout dépend de ce que tu veux faire avec, mais cette fonction te permet d'activer la cellule qui contient le texte (ou la référence) que tu cherches)

    Cells.Find(What:="<tape ici ce que tu cherches>", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False , SearchFormat:=False).Activate
    0
    1. Contributeur
      bonjour

      Tu n'as pas besoin de macro car Excel sait le faire.
      Menu "édition" / "rechercher"
      Tu ouvres "options" et "Dans" tu choisis "classeur"
      dans le choix "regarder dans" tu choisis "valeurs"
      dans "rechercher" tu saisis ta référence et si tu choisis "rechercher tout", toutes les cellules concernées son affichées et tu peux les atteindre avec un clic.

      -

      toujours zen
      0
      1. Contributeur
        Bonsoir
        Tout simplement
        Pour retrouver les cellules qui contiennent les références:
        sélectionner les feuilles concernées simultanément (touche ctrl maintenue)
        et faire tout bétement une recherche par le menu édition? non?
        BCRDLMNT
        0
        1. RE...
          Merci pour ces premières pistes, mais je vais essayer de mieux expliquer ma demande.
          En claire, c'est comme un petit module de recherche automatique multi-feuille que l'on pourrais activer afin d'éviter les fonctions de recherche en mode manuel ou autres artifices de bricolage.
          Donc une macros conseil serait bien venue.....
          ;)
          Ticosé
          0
          1. bjr

            voici la macro qu'il de faut

            Sub recherche7()
            texte_a_rechercher = InputBox("Texte à rechercher", "Recherche")
            If texte_a_rechercher = "" Then Exit Sub
            For Each feuille In Worksheets
            feuille.Select
            With feuille.Cells
            Set C = .Find(texte_a_rechercher, LookIn:=xlValues)
            If Not C Is Nothing Then
            firstAddress = C.Address
            Do
            C.Select
            rep = MsgBox("Recherche du suivant", vbYesNo, "Recherche")
            If rep = vbNo Then Exit Sub
            Set C = .FindNext(C)
            If C Is Nothing Then
            Adresse_encours = 0
            Else
            Adresse_encours = C.Address
            End If
            Loop While Not (C Is Nothing) And (Adresse_encours <> firstAddress)
            End If
            End With
            Next
            MsgBox "Texte non trouvé ou recherche terminée ou essayez une autre orthographe", vbInformation, "Recherche" 'Message si rien n'ai trouvé
            End Sub
            0
            1. Ok ! merci néné et aux autres aussi.
              C'est bon quand ça marche....
              see you soon
              ;)
              Ticosé
              0