Passer au contenu principal

Comment rechercher / trouver des valeurs dans un autre classeur?

Cet article explique comment rechercher des valeurs et renvoyer des données à partir d'un autre classeur, et comment rechercher / rechercher des valeurs à partir d'un autre classeur. Ici, je vais présenter trois solutions en détail.


Données Vlookup et valeurs de retour d'un autre classeur dans Excel

Par exemple, vous créez une table d'achat de fruits dans Excel, et vous devez maintenant rechercher les fruits d'un autre classeur et renvoyer les prix correspondants comme illustré ci-dessous. Ici, je vais vous guider pour le résoudre avec la fonction VLOOKKUP dans Excel.

1. Ouvrez les deux classeurs dans lesquels vous allez rechercher les valeurs et les renvoyer.

2. Sélectionnez une cellule vide, vous retournerez le prix, tapez la formule = RECHERCHEV (B2, [Price.xlsx] Sheet1! $ A $ 1: $ B $ 24,2, FALSE) dedans, puis faites glisser sa poignée de remplissage pour appliquer cette formule à la plage selon vos besoins.

Notes:
(1) Dans la formule ci-dessus, B2 est le fruit que vous rechercherez dans un autre classeur, Price.xlsx indique le nom de fichier du classeur à partir duquel vous rechercherez, Sheet1 signifie le nom de la feuille à partir de laquelle vous rechercherez et A $ 1 : $ B $ 24 est la plage à partir de laquelle vous rechercherez. Vous pouvez les changer selon vos besoins.
(2) Après avoir fermé le classeur que vous avez recherché, la formule sera automatiquement mise à jour = RECHERCHEV (B2, 'W: \ test \ [Price.xlsx] Sheet1'! $ A $ 1: $ B $ 24,2, FALSE), le W: \ test \ est le chemin d'enregistrement du classeur que vous avez recherché.

Jusqu'à présent, tous les prix sont retournés correctement comme illustré à gauche. Et ces prix seront mis à jour automatiquement si le classeur d'origine vous a recherché des modifications.

ruban de note La formule est trop compliquée à retenir? Enregistrez la formule en tant qu'entrée de texte automatique pour la réutiliser en un seul clic à l'avenir!
Lire la suite...     Essai gratuit

Données Vlookup et valeurs de retour d'un autre classeur fermé avec VBA

Il peut être difficile de configurer le chemin d’enregistrement, le nom de fichier et la feuille de calcul dans la fonction RECHERCHEV. Cette méthode introduira un VBA pour le résoudre facilement.

1. appuie sur le autre + F11 touches pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez sur l' insérer > Module, puis collez ci-dessous le code VBA dans la fenêtre du module d'ouverture.

VBA: données Vlookup et valeurs de retour d'un autre classeur fermé

Private Function GetColumn(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
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xUserRange = Application.InputBox("Lookup values :", "Kutools for Excel", xAddress, Type:=8)
If Err <> 0 Then Exit Sub
Set xUserRange = Application.Intersect(xUserRange, Application.ActiveSheet.UsedRange)
xFileName = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 1, "Select a Workbook")
If xFileName = False Then Exit Sub
Application.ScreenUpdating = False
Set xSourceWb = Workbooks.Open(xFileName)
Set xSourceSh = xSourceWb.Worksheets.Item(1)
xString = "='" & xSourceWb.Path & Application.PathSeparator & _
"[" & xSourceWb.Name & "]" & xSourceSh.Name & "'!$"
For Each xRg In xUserRange
Set xFCell = xSourceSh.Cells.Find(xRg.Value, , xlValues, xlWhole, , , False)
If Not (xFCell Is Nothing) Then
xRg.Offset(0, 2).Formula = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row
End If
Next
xSourceWb.Close False
Application.ScreenUpdating = True
End Sub
Notes: Ce VBA renverra des valeurs dans une colonne qui est 2 colonnes derrière la colonne sélectionnée. Par exemple, je sélectionne la colonne B lors de l'application de ce VBA, les valeurs seront renvoyées dans la colonne D. Si vous devez modifier la colonne de destination, veuillez trouver le code xRg.Offset (0, 2) .Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row et remplacez 2 à un autre numéro selon vos besoins.

3. appuie sur le F5 ou cliquez sur la Courir bouton pour exécuter ce VBA.

4. Dans la boîte de dialogue d'ouverture, spécifiez la plage de données que vous recherchez, puis cliquez sur le bouton OK .

5. Sélectionnez maintenant le classeur dans lequel vous rechercherez les valeurs dans la boîte de dialogue d'ouverture Sélectionner un classeur, puis cliquez sur le bouton Ouvert .

Désormais, toutes les valeurs sélectionnées sont recherchées dans le classeur fermé spécifié et les valeurs correspondantes sont renvoyées dans la colonne spécifiée. Voir la capture d'écran:

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 (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi this works great thanks! Would it be at all possible to show me how i would change the code if i have the workbook open that i would like to lookup the data in?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations