Comment comparer deux colonnes dans Excel (à partir de feuilles différentes) et de copier les valeurs d'une colonne correspondante si les deux premières colonnes correspondent?
Je suis en train de comparer la colonne a de la Feuille 1 avec une colonne dans la Feuille 2, puis copiez les valeurs correspondantes dans la colonne b de la feuille 1 à la colonne b de la Feuille 2 (où la colonne " valeurs match). J'ai essayé de lire sur la façon de faire cela, mais je ne suis pas sûr si je devrais être en train d'essayer de créer une macro, ou si il y a un moyen plus simple de faire cela, peut-être RECHERCHEV ou d'un MATCH? Je ne suis vraiment pas familier avec la façon dont ces fonctions fonctionnent bien.
Aussi, si cela fait une différence, il sera répété valeurs dans la colonne b de la Feuille 2.
Feuille 1
12AT8001 1
12AT8002 2
12AT8003 3
12AT8004 4
12AT8005 5
12AT8006 6
Feuille 2
12AT8001
12AT8001
12AT8001
12AT8001
12AT8001
12AT8002
12AT8002
12AT8002
12AT8002
12AT8002
12AT8003
12AT8003
12AT8003
12AT8003
12AT8003
Vous devez vous connecter pour publier un commentaire.
Vlookup
est bon si les valeurs de référence (colonne A de la feuille 1) sont dans l'ordre croissant. Une autre option est d'Index et de rencontre, qui peut être utilisée quel que soit l'ordre (aussi longtemps Que les valeurs dans la colonne a de la feuille 1 sont uniques)C'est ce que vous mettez dans la colonne B de la feuille 2
Réglage
Sheet1!A$1:B$6
etSheet1!A$1:A$6
comme les plages nommées rend un peu plus convivial.Comme kmcamara découvert, c'est exactement le genre de problème que RECHERCHEV est destiné à résoudre, et à l'aide de recherchev est sans doute le plus simple des moyens alternatifs pour obtenir le travail fait.
En plus des trois paramètres pour lookup_value, table_range à être recherché, et la column_index pour les valeurs de retour, RECHERCHEV prend une quatrième argument que la documentation Excel appelle la "range_lookup".
Expansion sur deathApril de l'explication, si cet argument a la valeur VRAI (ou 1) ou omis, la table doit être triée dans l'ordre croissant des valeurs de la première colonne de la plage de valeurs pour la fonction de retour de ce qui serait normalement être comprise comme la "vraie" valeur. En vertu de ce comportement par défaut, la fonction renvoie une valeur basée sur une correspondance exacte, si l'on est trouvé, ou une correspondance approximative si une correspondance exacte n'est trouvée.
Si le match est approximative, la valeur qui est retournée par la fonction sera la deuxième plus grande valeur qui est inférieure à la lookup_value. Par exemple, si "12AT8003" sont absents de la table dans la Feuille 1, la recherche de formules pour que la valeur dans la Feuille 2, le retour "2", puisque "12AT8002" est la plus grande valeur dans la colonne de recherche de la table de gamme qui est moins que "12AT8003". (RECHERCHEV comportement par défaut de sens parfait si, par exemple, le but est d'examiner les taux de l'impôt de la table.)
Toutefois, si le quatrième argument a la valeur FAUX (ou 0), RECHERCHEV renvoie une valeur recherchée que s'il existe une correspondance exacte, et une valeur d'erreur #N/A si il ne l'est pas. Il est maintenant à la pratique habituelle pour envelopper une exacte RECHERCHEV dans une fonction sierreur pour rattraper le non-match en douceur. Avant l'introduction de IFERROR, pas de matches ont été vérifiés avec une fonction SI à l'aide de la formule RECHERCHEV une fois pour vérifier si il y avait un match, et une fois de retour à la concordance réelle valeur.
Bien qu'initialement plus difficile à maîtriser, deusxmach1na la solution proposée est une variation sur un puissant ensemble d'alternatives RECHERCHEV qui peut être utilisé pour renvoyer les valeurs d'une colonne ou d'une liste à l' gauche de la colonne de recherche, développée pour gérer les cas où une correspondance exacte avec plus d'un critère qui est nécessaire, ou modifié pour intégrer les OU ainsi que ET les conditions de match entre plusieurs critères.
Répéter kcamara de la solution choisie, la formule RECHERCHEV pour ce problème serait:
Faire une table de vérité et d'utiliser SUMPRODUCT pour obtenir les valeurs. Copier dans la cellule B1 de la feuille Sheet2 et copier vers le bas aussi loin que vous avez besoin de:
=SUMPRODUCT(--($A1 = Sheet1!$A:$A), Sheet1!$B:$B)
la partie qui crée la table de vérité est:
--($A1 = Sheet1!$A:$A)
Cette fonction retourne un tableau de 0 et de 1. 1 lorsque les valeurs de match et un 0 quand ils n'en ont pas. Puis la virgule après que va faire ce que j'appelle la "drôle" de multiplication de matrice et renvoie le résultat. J'ai peut-être mal compris votre question, il y a des valeurs en double dans la Colonne A de la feuille Sheet1?
Essayer:
Puis faites-la glisser vers le bas.
Il devrait fonctionner.