IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Modifier code moteur de recherche pour recherche sur plusieurs pages entieres ?


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Février 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Février 2017
    Messages : 18
    Points : 14
    Points
    14
    Par défaut Modifier code moteur de recherche pour recherche sur plusieurs pages entieres ?
    Bonjour,

    J'ai trouvé un code de moteur de recherche que j'ai adapté à mon userform, le probleme c'est qu'il effectue une recherche que sur la page 1 et de A2 à A24. J'aimerai l'adapter à mon fichier excel pour qu'il effectue une recherche sur la page en entier et toutes les pages de mon fichier et en cliquant sur la réponse trouvé il nous renvoi a la page du mot.

    Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub ComboBox1_Change()
     
        Application.ScreenUpdating = False
    Range("A2:A24").Interior.ColorIndex = 2
        ListView1.Clear
     
        If ComboBox1 <> "" Then
            For ligne = 2 To 24
                If Cells(ligne, 1) Like "*" & ComboBox1 & "*" Then
                    Cells(ligne, 1).Interior.ColorIndex = 43
                    ListView1.AddItem Cells(ligne, 1)
                End If
            Next
        End If
     
    End Sub
    Et voici une image de userform:
    Nom : Sans titre.jpg
Affichages : 1541
Taille : 55,1 Ko

    Merci.

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 945
    Points : 28 945
    Points
    28 945
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Qu'entends-tu par "recherche sur plusieurs pages entieres ?"

    Si tu parles de toutes les feuilles du classeur alors il faut créer une boucle
    Exemple d'une boucle qui parcourt toutes les feuilles du classeur où se trouve le code VBA et qui affiche le nom de chaque feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Dim sht As Worksheet
     For Each sht In ThisWorkbook.Worksheets
      MsgBox sht.Name
     Next

  3. #3
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 519
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 519
    Points : 16 451
    Points
    16 451
    Par défaut
    Bonjour
    Salut Philippe

    Peut-être ce code peut t'aider pour parcourir l'ensemble des feuilles à la recherche d'une chaîne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Option Explicit
    Sub Test()
    '
    '
    Dim x As Range
    Dim Monadresse As String, MaFeuille As String, AdresseP As String, Achercher As String
    Dim wsh As Worksheet
     
    'A adapter
    Achercher = "Juin"
     
    Worksheets.Select
    Sheets(1).Activate
        For Each wsh In Worksheets
            Monadresse = ""
            AdresseP = ""
            Set x = wsh.Cells.Find(What:=Achercher, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
            xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
            , SearchFormat:=False)
            If Not x Is Nothing Then
                AdresseP = x.Address
                Do
                    Monadresse = x.Address
                    MaFeuille = x.Parent.Name
                    'A adapater
                    MsgBox MaFeuille & ", " & Monadresse
                    Set x = wsh.Cells.FindNext(x)
                Loop While Not x Is Nothing And x.Address <> AdresseP
            End If
        Next wsh
    End Sub

  4. #4
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Février 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Février 2017
    Messages : 18
    Points : 14
    Points
    14
    Par défaut
    Bonjour, et merci pour vos solutions,

    Philippe Tulliez, oui c'est une recherche sur toutes les feuilles d'un classeur

    Par contre j'ai complétement oublier de préciser que je suis novice en VBA, et je ne sais pas comment inclure les codes que vous m'avez proposés.

    Je vous joint si ça peux être plus claire le fichier en question qui est légèrement modifié par rapport a l'original (pages en moins et données différentes).


    Essai.xlsm

  5. #5
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Je suis complètement, mais réellement découragé. C'est sûr qu'il y a moins de gugusses, mais la recherche intégrée d'Excel peut chercher dans tout un classeur sans le moindre chichi. Tout ce qu'il faut, c'est écrire un mot, et changer une sélection par défaut dans une liste déroulante. C'est à la portée d'un enfant de six ans.

    Nom : Chercher.jpg
Affichages : 942
Taille : 72,4 Ko

  6. #6
    Membre à l'essai
    Homme Profil pro
    Fonctionnaire
    Inscrit en
    Février 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Fonctionnaire

    Informations forums :
    Inscription : Février 2017
    Messages : 18
    Points : 14
    Points
    14
    Par défaut
    J'avais besoin de créer un moteur de recherche pour éviter de toujours devoir remettre les options du moteur intégré à excel (fichier utilisé de nombreuse fois par jour et par plusieurs personnes donc plus intuitif et rapide a utiliser).

    Désolé pour votre découragement.
    Bonne soirée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] Formule pour rechercher des noms sur deux colonnes selon la date
    Par cedmorelle dans le forum Excel
    Réponses: 3
    Dernier message: 01/10/2015, 16h31
  2. [WD-2003] Macro pour rechercher et remplacer sur table Index
    Par milia123 dans le forum VBA Word
    Réponses: 0
    Dernier message: 12/01/2013, 15h02
  3. Réponses: 2
    Dernier message: 10/09/2010, 15h43
  4. Mémorisation de sélections pour formulaire sur plusieurs pages
    Par pixelomilcouleurs dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/02/2010, 15h58
  5. [MySQL] Moteur de recherche sur plusieurs pages
    Par DonKnacki dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 30/01/2007, 14h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo