2009-01-15 15 views
4

Je suis très familier avec les fonctions vlookup et hlookup dans Excel. Cependant, je cherche une méthode pour faire les deux. Prenez cet exemple:Rechercher une valeur dans une table basée sur deux valeurs d'entrée

 A    B  C 
1      Resources 
2 Task   Mgr Sr. Mgr 
3 ----------------------------- 
4 Task 1   30%  70% 
5 Task 2   40%  60% 
6 Task 3   50%  50% 
7 Task 4   70%  30% 

Si je voulais mettre une formule dans une nouvelle cellule pour rechercher à la fois une tâche et un type de ressource pour ramener le pourcentage approprié, comment pourrais-je faire cela?

Répondre

4

Une combinaison de INDEX et MATCH fera l'affaire:

= INDEX (B $ 4: $ C 7 $, MATCH ("Tâche 3", $ A $ 4: $ A 7,0 $), MATCH ("Mgr", $ B $ 2: $ C 2,0 $))

1
=OFFSET(A3,MATCH("Task 3", A4:A7, 0),MATCH("Mgr",B2:C2,0)) 

Bien sûr, vous obtenez probablement les choses à rechercher d'autres cellules, donc remplacer « Tâche 3 » et « Mgr » ci-dessus avec des références à ces cellules.

1

Bon, supposons que vous avez une feuille Excel avec le format suivant où votre table de recherche occupe la plage de cellules A1: E5

 C1 C2 C3 C4 
R1 R1C1 R1C2 R1C3 R1C4 
R2 R2C1 R2C2 R2C3 R2C4 
R3 R3C1 R3C2 R3C3 R3C4 
R4 R4C1 R4C2 R4C3 R4C4 

Supposons également que vous souhaitiez entrer le nom d'en-tête de ligne et l'en-tête de colonne nam e dans les cellules G3 et H3 respectivement (dont j'ai les valeurs de texte "R3" et "C2").

Dans la cellule que vous souhaitez afficher la valeur de votre sortie, vous pouvez soit utiliser HLOOKUP comme ceci:

=HLOOKUP(H3,A1:E5,MATCH(G3,A1:A5,0)) 

ou RECHERCHEV comme ceci:

=VLOOKUP(G3,A1:E5,MATCH(H3,A1:E1,0)) 

Soit affiche la valeur « R3C2 » dans ma cellule de sortie.

+0

Merci. J'ai essayé cette approche mais j'ai rencontré des problèmes, apparemment parce que j'avais des colonnes supplémentaires entre A et B dans votre exemple. Les données retournées provenaient des colonnes B-E même si je cherchais M-P. Vous avez quand même eu un upvote quand même! – cLFlaVA

4

Une autre possibilité:

=VLOOKUP(E3,A2:C7,MATCH(E2,A2:C2,0),FALSE) 

  • E3 contient la tâche de rechercher
  • E2 contient le nom de la colonne d'en-tête (par exemple Mgr)
  • A2: A7 est la table de données
  • A2: C2 est l'en-tête
+0

Remou - Merci. J'ai essayé cette approche mais j'ai rencontré des problèmes, apparemment parce que j'avais des colonnes supplémentaires entre A et B dans votre exemple. Les données retournées provenaient des colonnes B-E même si je cherchais M-P. Vous avez quand même eu un upvote quand même! – cLFlaVA