Macro recherche

Bonjour à tout le forum,

Après avoir essayé de voir sur le forum rien je reviens vers vous.

Je voudrai créer un macro qui me permet de faire une recherche dans mon classeur.

Bonsoir

Je ne suis pas un spécialiste mais ce qui est certain c'est qu'il faut que tu précises un peu :

Qu'est ce que tu recherches?

Si tu peux mettre un morceau de ton fichier c'est encore mieux.

Bon courage

Bonsoir,

Avec VBA ou avec formules Excel ?

Hervé.

Avec VBA si possible

et merci

Bonsoir à tous,

tmk, essaie avec l'enregistreur de macro ça peut t'aider !

Lance l'enregistreur de macro, simule la recherche, éteins l'enregistreur, regarde le code VBA associé.

Bonjour,

En VBA, teste et adapte à ta convenance. Reviens si tu as des questions :

Private Sub Chercher()

    Dim LaPlage As Range
    Dim Cel As Range
    Dim Adr As String
    Dim Chaine As String
    Dim Resultat As String

    'demande par l'intermédiaire d'un boite de dialogue mot recherché
    Chaine = InputBox("Mot recherché !")

    'si pas renseigné, fin
    If Chaine = "" Then Exit Sub

    'défini la plage de recherche sur la feuille active
    Set LaPlage = Plage(ActiveSheet)

    'effectue la recherche
    '- xlPart pour une recherche en partie
    '- xlWhole pour une recherche exacte
    Set Cel = LaPlage.Find(Chaine, , xlValues, xlPart)

    'si trouvé, boucle et stocke les différentes adresses des cellules
    If Not Cel Is Nothing Then

        Adr = Cel.Address

        Do
            Resultat = Resultat & Cel.Address(0, 0) & vbCrLf

            Set Cel = LaPlage.FindNext(Cel)

        Loop While Adr <> Cel.Address

        MsgBox "Le mot recherché a été trouvé dans les cellules suivantes :" & vbCrLf & Resultat

    Else

        MsgBox "Mot non trouvé !"

    End If

End Sub

Function Plage(Fe As Worksheet) As Range

    With Fe
        Set Plage = .Range(.Cells(1, 1), _
                    .Cells( _
                    .Cells.Find("*", .[A1], -4123, , _
                    1, 2).Row, _
                    .Cells.Find("*", .[A1], -4123, , _
                    2, 2).Column))
    End With

End Function

Hervé.

merci merci merci Theze

Rechercher des sujets similaires à "macro recherche"