KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment rechercher ou trouver des valeurs dans un autre classeur ?

AuteurKelly Date de modification

Dans votre travail quotidien avec Excel, il vous arrive fréquemment de devoir récupérer des informations situées dans un autre classeur. Que vous établissiez un résumé, rapprochiez des données entre services ou souhaitiez simplement utiliser des données de référence gérées séparément, maîtriser la recherche de valeurs et la récupération d’informations depuis un classeur externe est essentiel. Cette compétence renforce considérablement la cohérence des données et limite les erreurs manuelles, notamment lorsque vous travaillez avec des plages sources distribuées, des jeux de données volumineux ou des classeurs partagés avec vos collègues.

Cet article présente plusieurs méthodes efficaces pour rechercher ou localiser des valeurs dans un autre classeur et renvoyer directement les données pertinentes dans votre fichier Excel actif. Il détaille trois approches pratiques, adaptées à des scénarios courants : la fonction classique VLOOKUP, utilisable avec des classeurs ouverts ou fermés, une solution VBA pour répondre à des besoins dynamiques, ainsi que des techniques alternatives s’appuyant sur d’autres formules. Des explications claires et des exemples concrets vous guideront pour choisir la méthode la mieux adaptée à votre flux de travail.


Rechercher des données avec VLOOKUP et Valeur de retour depuis un autre classeur dans Excel

Supposons que vous prépariez un tableau d’achat de fruits dans Excel et que vous deviez récupérer les derniers prix stockés dans un autre classeur. Plutôt que de copier-coller, vous pouvez facilement rechercher les noms de fruits dans votre classeur source et extraire automatiquement les prix correspondants, garantissant ainsi une précision et une actualisation en temps réel. Ci-dessous, nous expliquons comment réaliser cette tâche à l’aide de la fonction VLOOKUP.

créer des données exemplesrechercher les fruits dans un autre classeur

Commencez par ouvrir simultanément le classeur dans lequel vous souhaitez collecter ou résumer des données et le classeur source contenant les informations (par exemple, les prix).

Sélectionnez la cellule où vous souhaitez afficher le prix d’un fruit, puis saisissez-y la formule suivante en adaptant les détails si nécessaire :

=VLOOKUP(B2,[Price.xlsx]Sheet1!$A$1:$B$24,2,FALSE)

Après avoir saisi la formule, appuyez sur Entrée. Pour l’appliquer à davantage de lignes, il vous suffit de faire glisser la poignée de recopie (le petit carré en bas à droite de la cellule) vers le bas afin de remplir autant de cellules que nécessaire.

saisir une formule pour rechercher dans un autre classeur

faire glisser et remplir la formule dans d'autres cellules

Explication et conseils :
(1) Dans la formule d’exemple ci-dessus :

  • B2 est la cellule contenant le fruit à rechercher.
  • Price.xlsx est le classeur source contenant les données de prix. Vérifiez que le nom du fichier et son extension sont corrects.
  • Sheet1 est la feuille du classeur source contenant la table de recherche.
  • A$1:$B$24 est la plage contenant à la fois la clé (par exemple, les noms de fruits) et la valeur (les prix). Ajustez cette plage si vos données se trouvent ailleurs.
  • 2 signifie que les valeurs seront extraites de la deuxième colonne de la plage Plage limitée.
  • FALSE garantit qu’une correspondance exacte est requise ; utiliser TRUE pourrait produire des résultats incorrects ou approximatifs.
(2) Si vous fermez le classeur source, Excel modifiera la référence de la formule pour y inclure le Chemin du fichier (par exemple,)=VLOOKUP(B2,‹W:\test\[Price.xlsx]Sheet1›!$A$1:$B$24,2,FALSE)Veillez à ce que le fichier référencé reste à cet emplacement, sinon les formules risquent de générer des erreurs ou des valeurs #REF!. Si vous déplacez ou renommez le classeur source, vous devrez peut-être mettre à jour les références dans vos formules.
(3) Si vous obtenez une erreur #N/A, cela signifie généralement que la valeur recherchée n’existe pas dans la plage source. Vérifiez attentivement l’orthographe, la plage, et assurez-vous que tous les classeurs nécessaires sont accessibles.

 

Grâce à cette méthode, vous pouvez centraliser des prix ou des informations à jour provenant de sources externes. La valeur de retour est mise à jour automatiquement dès que le classeur source est modifié, à condition qu’il soit ouvert ou accessible via le chemin correct.
Avantages : Facile à configurer pour la plupart des utilisateurs ; les données sont mises à jour automatiquement.
Limites : Les formules peuvent devenir complexes si les chemins ou les noms des classeurs changent, et les requêtes vers des classeurs fermés peuvent ralentir les fichiers volumineux ou vous inviter à mettre à jour les liens.

Pour des extractions plus complexes, ou si vous devez fréquemment faire référence à des données alors que le classeur externe est fermé, envisagez d’utiliser la méthode VBA ou les formules alternatives présentées ci-dessous.

ruban Note La formule est trop compliquée à retenir ? Enregistrez-la en tant qu’entrée de texte automatique et réutilisez-la en un seul clic à l’avenir !En savoir plus…     Essai gratuit
une capture d’écran de kutools for excel ia

Libérez la magie d’Excel avec Kutools IA

  • Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
  • formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
  • Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
  • Interprétation de formules : Décryptez facilement les formules complexes.
  • Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Améliorez vos capacités Excel grâce à des outils alimentés par l’intelligence artificielle.Téléchargez dès maintenantet découvrez une efficacité inégalée !

Rechercher des données avec VLOOKUP et Valeur de retour depuis un autre classeur fermé à l’aide de VBA

Configurer des références de recherche avec VLOOKUP peut vite devenir déroutant, surtout lorsque vous modifiez fréquemment le chemin, le nom ou la feuille du fichier source. Dans ces situations, automatiser le processus de recherche à l’aide de VBA s’impose comme une solution bien plus fluide : elle vous permet d’effectuer des recherches même si le classeur source est fermé, tout en gérant automatiquement la sélection des plages et la récupération des données.

Suivez ces étapes pour utiliser VBA dans les recherches inter-classeurs :

1. Appuyez simultanément sur Alt + F11 pour ouvrir la fenêtre de l’éditeur Microsoft Visual Basic pour Applications.

2.Dans l’éditeur VBA, cliquez sur Insertion>Module, puis copiez-collez le code suivant dans la fenêtre du module :

VBA : Recherche verticale de données et Valeur de retour depuis un autre classeur fermé

Option Explicit

' Convert column number to column letter
Private Function GetColumn(ByVal Num As Integer) As String
    If Num <= 26 Then
        GetColumn = Chr(Num + 64)
    Else
        GetColumn = Chr((Num - 1) \ 26 + 64) & _
                    Chr((Num - 1) Mod 26 + 65)
    End If
End Function

Sub FindValue()

    Dim xAddress As String
    Dim xString As String
    Dim xFileName As Variant
    Dim xUserRange As Range
    Dim xRg As Range
    Dim xFCell As Range
    Dim xSourceSh As Worksheet
    Dim xSourceWb As Workbook
    
    On Error Resume Next
    
    ' Get current selection address
    xAddress = Application.ActiveWindow.RangeSelection.Address
    
    ' Ask user to select lookup range
    Set xUserRange = Application.InputBox( _
        Prompt:="Lookup values :", _
        Title:="Kutools for Excel", _
        Default:=xAddress, _
        Type:=8)
    
    If Err.Number <> 0 Then Exit Sub
    On Error GoTo 0
    
    ' Limit selection to used range
    Set xUserRange = Application.Intersect(xUserRange, _
                                           Application.ActiveSheet.UsedRange)
    
    ' Ask user to select source workbook
    xFileName = Application.GetOpenFilename( _
                "Excel Files (*.xlsx), *.xlsx", _
                1, _
                "Select a Workbook")
                
    If xFileName = False Then Exit Sub
    
    Application.ScreenUpdating = False
    
    ' Open source workbook
    Set xSourceWb = Workbooks.Open(xFileName)
    Set xSourceSh = xSourceWb.Worksheets.Item(1)
    
    ' Build external reference string
    xString = "='" & xSourceWb.Path & Application.PathSeparator & _
              "[" & xSourceWb.Name & "]" & _
              xSourceSh.Name & "'!$"
    
    ' Loop through user range
    For Each xRg In xUserRange
    
        ' Find matching value in source sheet
        Set xFCell = xSourceSh.Cells.Find( _
                        What:=xRg.Value, _
                        LookIn:=xlValues, _
                        LookAt:=xlWhole, _
                        MatchCase:=False)
        
        ' If found, write formula 2 columns to the right
        If Not xFCell Is Nothing Then
            xRg.Offset(0, 2).Formula = _
                xString & _
                GetColumn(xFCell.Column + 1) & _
                "$" & xFCell.Row
        End If
        
    Next xRg
    
    ' Close source workbook without saving
    xSourceWb.Close False
    
    Application.ScreenUpdating = True

End Sub

Détails importants :

  • Le code renvoie la valeur correspondante située deux colonnes à droite de la plage de recherche. Par exemple, si vous sélectionnez la colonne B, les résultats s’affichent en colonne D.
  • Si vous souhaitez que le résultat s’affiche dans une autre colonne, remplacez le nombre 2 dans xRg.Offset(0,2).Formulapar une autre valeur (par exemple,)1 pour la colonne suivante, 3 pour la troisième colonne à droite).
  • Sélectionnez le classeur et la feuille de calcul appropriés lorsque vous y êtes invité ; le code utilisera toujours la première feuille du fichier sélectionné. Modifiez-le si votre feuille source n’est pas la première.
  • Enregistrez toujours votre fichier avant d’exécuter des macros inconnues, car elles ne peuvent pas être annulées une fois lancées.

3. Exécutez la macro en appuyant sur la touche F5 ou en cliquant sur le bouton Exécuter. Une boîte de dialogue intitulée « Kutools pour Excel » s’ouvrira alors et vous invitera à sélectionner la plage de cellules dans laquelle vous souhaitez rechercher les valeurs.

spécifier la plage de données à rechercher

4. Après avoir sélectionné votre plage, cliquez sur OK. Peu après, une autre boîte de dialogue apparaît, vous invitant à choisir le classeur source (même s’il est fermé). Parcourez les dossiers, sélectionnez le fichier approprié, puis cliquez sur Ouvrir pour confirmer.

sélectionner le classeur dans lequel vous allez rechercher des valeurs

Une fois la macro terminée, les valeurs correspondantes du classeur source seront renvoyées dans la colonne cible de votre feuille de calcul actuelle. Si certaines valeurs sont manquantes, vérifiez que les plages de valeurs de recherche dans votre feuille de calcul actuelle correspondent exactement à celles des données sources (la casse ainsi que les espaces en début et en fin de cellule sont pris en compte pour une correspondance exacte).

les valeurs correspondantes sont extraites d’un classeur fermé

Avantages : Gère les classeurs fermés, évite les chemins de fichiers codés en dur dans les formules et offre une grande flexibilité pour sélectionner les fichiers sources à la volée.
Considérations : Les macros doivent être activées ; VBA peut ne pas fonctionner sur des feuilles protégées ou avec des données provenant de fichiers non Excel. Enregistrez votre classeur au format prenant en charge les macros (*.xlsm) si vous prévoyez d’utiliser cette méthode régulièrement.

En cas d’erreur, vérifiez qu’il n’y a aucune faute de frappe dans les noms des feuilles ou des fichiers, que la plage sélectionnée est appropriée et que les chemins des fichiers sont accessibles. Pour le débogage, envisagez d’exécuter le code ligne par ligne à l’aide de l’éditeur VBA.


Solutions alternatives par formule pour les recherches inter-classeurs

Outre l’approche classique avec VLOOKUP et VBA, il existe d’autres méthodes pour effectuer des recherches inter-classeurs dans Excel. Elles peuvent être préférables dans certaines situations, notamment lorsque votre structure de données est différente, que vous préférez les formules aux macros, ou que vous avez besoin de plus de flexibilité (comme rechercher vers la gauche ou utiliser plusieurs critères).

Utilisation des fonctions INDEX et EQUIV entre classeurs

En combinant INDEX et EQUIV, vous pouvez rechercher des valeurs dans n’importe quelle direction — gauche, droite, haut ou bas — même dans un autre classeur. Cette approche s’avère particulièrement utile lorsque la colonne contenant les données à extraire ne se trouve pas à droite de la colonne de recherche, une limitation bien connue de VLOOKUP.

Scénario : Supposons que vous souhaitiez récupérer un prix à partir d’un autre classeur ouvert, où le nom du fruit ne se trouve pas nécessairement dans la première colonne.

1.Dans votre classeur de destination, sélectionnez la cellule où vous souhaitez afficher le résultat (par exemple, C2) et saisissez la formule ci-dessous (remplacez le classeur, la feuille et la plage selon vos besoins) :

=INDEX([Price.xlsx]Sheet1!$B$1:$B$24, MATCH(B2, [Price.xlsx]Sheet1!$A$1:$A$24,0))

2. Appuyez sur Entrée. Copiez ensuite la formule ou étendez-la aux autres lignes en faisant glisser la poignée de recopie.

Explication des paramètres :

  • [Price.xlsx]Sheet1!$B$1:$B$24 : la plage où les prix sont stockés.
  • B2 : Le nom du fruit à rechercher.
  • [Price.xlsx]Sheet1!$A$1:$A$24 : la plage dans laquelle rechercher votre valeur.
  • Le 0 à la fin garantit une correspondance exacte.
Si le classeur source est fermé, Excel met à jour automatiquement le chemin du fichier dans la formule. Comme avec VLOOKUP, veillez à ce que ce chemin reste valide.

Points forts : Fonctionne aussi bien pour les recherches vers la gauche que vers la droite ; s’adapte à des dispositions plus flexibles.
Conseils : Évitez de déplacer ou de renommer les fichiers sources sans mettre à jour votre formule.

Utilisation de XLOOKUP pour les recherches inter-classeurs (Excel 365 et versions ultérieures)

Si vous utilisez Excel 365 ou Excel 2021, la nouvelle fonction XLOOKUP est encore plus flexible. Elle vous permet de trouver facilement des correspondances exactes, de prendre en charge les recherches vers la gauche et de gérer automatiquement les valeurs manquantes sans générer d’erreurs.

Pour l’utiliser :
Dans la cellule où vous souhaitez le résultat, saisissez :

=XLOOKUP(B2, [Price.xlsx]Sheet1!$A$1:$A$24, [Price.xlsx]Sheet1!$B$1:$B$24, "Not found")

Appuyez sur Entrée et copiez la formule selon vos besoins. Ici, « Non trouvé » peut être remplacé par tout texte personnalisé que vous souhaitez afficher en cas d’échec de la recherche.

Avantages : Plus flexible que VLOOKUP et plus simple à utiliser ; évite de nombreuses erreurs courantes liées aux anciennes formules. Toutefois, XLOOKUP n’est disponible que dans les versions récentes d’Excel.

Pour des besoins complexes, tels que la correspondance multicritères, la recherche dans des feuilles fusionnées ou l’optimisation des performances dans des fichiers très volumineux, envisagez d’organiser vos Données source sous forme de tables structurées ou d’utiliser l’outil Power Query d’Excel pour Lier les données efficacement entre plusieurs classeurs.

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance 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 précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez 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 vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels