Passer au contenu principal

Comment rechercher rapidement une valeur dans plusieurs feuilles ou classeurs?

Auteur : Soleil Dernière modification: 2022-09-13

Avez-vous déjà imaginé de rechercher une certaine valeur dans plusieurs feuilles ou classeurs dans Excel? Ce didacticiel présente différentes méthodes pour résoudre les problèmes de recherche dans plusieurs feuilles ou de recherche dans plusieurs classeurs.

Rechercher une valeur dans plusieurs feuilles d'un classeur avec la fonction Rechercher et remplacer

Rechercher une valeur dans tous les classeurs d'un dossier avec VBA

Recherchez rapidement une valeur dans plusieurs classeurs ouverts avec Kutools for Excel bonne idée3


Avec Excel's Rechercher et remplacer fonction, vous pouvez trouver une certaine valeur sur plusieurs feuilles.

1. Sélectionnez plusieurs onglets de feuille à partir desquels vous souhaitez rechercher une valeur en maintenant le bouton Ctrl et en cliquant sur les feuilles de calcul dans le Barre d'onglets de la feuille un par un. Voir la capture d'écran:

valeur de recherche de document dans plusieurs feuilles 1

2. Appuyez ensuite sur Ctrl + F pour activer le Rechercher et remplacer et saisissez la valeur que vous souhaitez rechercher dans le Trouvez ce que zone de texte sous Trouvez onglet, puis cliquez sur Trouver tout bouton pour lister tous les résultats. Voir la capture d'écran:

valeur de recherche de document dans plusieurs feuilles 2


Rechercher et remplacer de la valeur sur les feuilles et les classeurs

Kutools for Excelest avancé Rechercher et remplacer fonction, peut vous aider à trouver et à remplacer une valeur sur plusieurs feuilles et classeurs ouverts.  Téléchargement gratuit
trouver remplacer
 
Kutools for Excel : avec plus de 300 compléments Excel pratiques, à essayer gratuitement et sans limitation dans 30 jours.

Si vous souhaitez rechercher une valeur dans tous les classeurs fermés à partir d'un dossier, vous ne pouvez appliquer qu'un VBA pour le résoudre.

1. Activez un nouveau classeur et sélectionnez une cellule, puis appuyez sur Alt + F11 clés pour ouvrir Microsoft Visual pour les applications de base fenêtre.

2. Cliquez insérer > Module et collez ci-dessous VBA dans la nouvelle fenêtre Module.

VBA: recherchez une valeur dans tous les classeurs d'un dossier.

Sub SearchFolders()
'UpdatebyKutoolsforExcel20200913
    Dim xFso As Object
    Dim xFld As Object
    Dim xStrSearch As String
    Dim xStrPath As String
    Dim xStrFile As String
    Dim xOut As Worksheet
    Dim xWb As Workbook
    Dim xWk As Worksheet
    Dim xRow As Long
    Dim xFound As Range
    Dim xStrAddress As String
    Dim xFileDialog As FileDialog
    Dim xUpdate As Boolean
    Dim xCount As Long
    Dim xAWB As Workbook
    Dim xAWBStrPath As String
    Dim xBol As Boolean
    Set xAWB = ActiveWorkbook
    xAWBStrPath = xAWB.Path & "\" & xAWB.Name
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a forlder"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    xStrSearch = "KTE"
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    Set xOut = Worksheets.Add
    xRow = 1
    With xOut
        .Cells(xRow, 1) = "Workbook"
        .Cells(xRow, 2) = "Worksheet"
        .Cells(xRow, 3) = "Cell"
        .Cells(xRow, 4) = "Text in Cell"
        Set xFso = CreateObject("Scripting.FileSystemObject")
        Set xFld = xFso.GetFolder(xStrPath)
        xStrFile = Dir(xStrPath & "\*.xls*")
        Do While xStrFile <> ""
            xBol = False
            If (xStrPath & "\" & xStrFile) = xAWBStrPath Then
                xBol = True
                Set xWb = xAWB
            Else
                Set xWb = Workbooks.Open(Filename:=xStrPath & "\" & xStrFile, UpdateLinks:=0, ReadOnly:=True, AddToMRU:=False)
            End If
            For Each xWk In xWb.Worksheets
                If xBol And (xWk.Name = .Name) Then
                Else
                Set xFound = xWk.UsedRange.Find(xStrSearch)
                If Not xFound Is Nothing Then
                    xStrAddress = xFound.Address
                End If
                Do
                    If xFound Is Nothing Then
                        Exit Do
                    Else
                        xCount = xCount + 1
                        xRow = xRow + 1
                        .Cells(xRow, 1) = xWb.Name
                        .Cells(xRow, 2) = xWk.Name
                        .Cells(xRow, 3) = xFound.Address
                        .Cells(xRow, 4) = xFound.Value
                    End If
                    Set xFound = xWk.Cells.FindNext(After:=xFound)
                Loop While xStrAddress <> xFound.Address
                End If
            Next
            If Not xBol Then
            xWb.Close (False)
            End If
            xStrFile = Dir
        Loop
        .Columns("A:D").EntireColumn.AutoFit
    End With
    MsgBox xCount & " cells have been found", , "Kutools for Excel"
ExitHandler:
    Set xOut = Nothing
    Set xWk = Nothing
    Set xWb = Nothing
    Set xFld = Nothing
    Set xFso = Nothing
    Application.ScreenUpdating = xUpdate
    Exit Sub
ErrHandler:
    MsgBox Err.Description, vbExclamation
    Resume ExitHandler
End Sub

3. Appuyez ensuite sur F5 clé ou Courir bouton pour exécuter ce VBA, et un Sélectionnez un dossier La boîte de dialogue apparaît pour vous rappeler de sélectionner un dossier dans lequel vous souhaitez rechercher une valeur. Voir la capture d'écran:

valeur de recherche de document dans plusieurs feuilles 3

4. Et puis cliquez sur OK et une autre boîte de dialogue apparaît pour vous rappeler que le nombre de cellules a été trouvé. Voir la capture d'écran:

valeur de recherche de document dans plusieurs feuilles 4

5. Cliquez OK à close il, et toutes les cellules trouvées sont répertoriées dans la feuille de calcul actuelle avec les informations correspondantes.

valeur de recherche de document dans plusieurs feuilles 5

Conseil: Dans ci-dessus VBA, vous recherchez la valeur «KTE»et tu peux changer «KTE» à partir de ce xStrSearch = "KTE" à une autre valeur selon vos besoins.


Si vous souhaitez simplement rechercher une valeur dans plusieurs classeurs ouverts, vous pouvez utiliser Kutools pour Excel'est avancé Rechercher et remplacer utilitaire.

Kutools for Excel, avec plus de 300 fonctions pratiques, rend vos travaux plus faciles. 

Après installation gratuite Kutools for Excel, procédez comme suit:

1. Dans l'un des classeurs ouverts, cliquez sur Kutools > Navigation, puis cliquez sur le Rechercher et remplacer bouton (dans la fenêtre de contrôle qui apparaît maintenant) bouton de recherche de document aller à Rechercher et remplacer vitre. Voir la capture d'écran:

valeur de recherche de document dans plusieurs feuilles 6

2. Puis clique Trouvez et tapez la valeur que vous souhaitez rechercher dans le Trouvez ce que zone de texte, puis sélectionnez Tous les classeurs du Dans liste déroulante, et cliquez sur Trouver tout pour lister toutes les cellules trouvées. Voir la capture d'écran:
doc kutools trouver remplacer 2

Conseil:

Avec Kutools for Excelest avancé Rechercher et remplacer utilitaire, vous pouvez rechercher et remplacer la valeur dans les feuilles sélectionnées sur plusieurs classeurs, tous les classeurs, classeur actif, feuille active ou sélection.
doc kutools trouver remplacer 3


Articles relatifs:

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
Comments (18)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
program stops here:

Set xWb = Workbooks.Open(Filename:=xStrPath & "\" & xStrFile, UpdateLinks:=0, ReadOnly:=True, AddToMRU:=False)
This comment was minimized by the moderator on the site
Hi, Mike, I have update the VBA in the article, please try again. If there is any problem, please let me know, thank you.
This comment was minimized by the moderator on the site
HI in my case worksheet with more than 1 Lakhs record, scripts failed.
This comment was minimized by the moderator on the site
Hi, Dhireesh, VBA code has its own limitation. You could try Kutools for Excel's Fiind and Replace, but it may run slowly, please be patience, and had better save the workbooks before.
This comment was minimized by the moderator on the site
How do i create hyperlink under column C for all cell values in the same code?
This comment was minimized by the moderator on the site
como generar códigos qr
This comment was minimized by the moderator on the site
Awesome this works perfect,
Could you help me, I would like to create an hyperlink to each cell where the value was found.

Thanks in advance
This comment was minimized by the moderator on the site
me too I would like! :)
This comment was minimized by the moderator on the site
Perfect for what I need except for the fact that it creates a new sheet every search. How would I modify the code to use a single sheet for each search instead of creating a new one? Thanks, James
This comment was minimized by the moderator on the site
Your code works great, I look for a code that finds two texts in excel files, do you know how is it possible?
This comment was minimized by the moderator on the site
Sorry, I have no idea on this problem, you can go to our forum https://www.extendoffice.com/forum.html to carry on the problem, maybe someone know the answer.
This comment was minimized by the moderator on the site
How can I add another column and bring the value that is always 3 columns to the right on the value found?
This comment was minimized by the moderator on the site
Did you ever figure this out? I need that as well.
This comment was minimized by the moderator on the site
Sorry I cannot help you, you can go to out forum https://www.extendoffice.com/forum.html to carry on the question, maybe someone can help you.
This comment was minimized by the moderator on the site
Thanks. It helped me a lot =)
This comment was minimized by the moderator on the site
This is what i want it to return "Site Instruction" which is allocated to all Text in Cell
Workbook Worksheet Cell Text in Cell Site Instruction
Shift report Emicc 01-10-17.xlsx Sheet1 $D$20 CMS install 1773
Shift report Emicc 01-10-17.xlsx Sheet1 $D$21 CMS install 1763
Shift report Emicc 01-10-17.xlsx Sheet1 $D$24 CMS install 1551
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations