2015-09-11 2 views
-1

J'ai une table avec trois colonnes. Les en-têtes de colonnes sont donc: Client, Événement et Propriétaire. Je veux entrer une valeur "Client" et "Événement" dans les cellules de référence et demander à la formule de renvoyer une liste de toutes les valeurs "Propriétaire" qui correspondent aux critères Client et Événement.Renvoyer plusieurs valeurs en utilisant plusieurs critères de correspondance

J'ai une formule qui filtre sur un critère et renvoie une liste de tous les matchs (F1 est ma cellule de référence):

=IF(ISERROR(INDEX($C$1:$C$6,SMALL(IF($A$1:$A$6=$F$1,ROW($A$1:$A$6)),ROW(1:1)),1)),"",INDEX($C$1:$C$6,SMALL(IF($A$2:$A$6=$F$1,ROW($A$2:$A$6)),ROW(1:1)) 

J'ai une formule qui filtre sur deux critères, mais ne retourne que le premier match (J1 et J2 sont mes cellules de référence):

=INDEX(C2:C6,MATCH(1,(A2:A6=J1)*(B2:B6=J2),0),1) 

je besoin d'aide à combiner les deux formules pour que je puisse à la fois le filtre sur deux critères et retourner tous les matchs dans une liste. J'ai essayé d'ajouter un deuxième critère à l'instruction IF imbriquée dans la fonction SMALL de la première formule, mais cela ne semble pas fonctionner.

+1

Pourriez-vous utiliser le filtre de données intégré d'Excel? – xidgel

+0

Je doute que votre première formule retourne quoi que ce soit. – pnuts

+0

Votre première formule est * surprenante *. Êtes-vous sûr que c'est correct? Je pense que vous obtiendrez plus d'aide si vous montrez les données. –

Répondre

0

Il est difficile de savoir ce dont vous avez besoin sans voir les données, mais essayez-le.

Ceci est une formule de tableau et doit être confirmé avec Ctrl +Maj +Entrez.

=IFERROR(INDEX(C$1:C$11,SMALL(IF((A$2:A$11=J$1)*(B$2:B$11=J$2),ROW(A$2:A$11)),ROW(1:1))),"") 

Après confirmation de la formule que vous pouvez ensuite le copier vers le bas.

+0

Lorsque j'entre la formule, elle renvoie la valeur de la cellule en dessous de celle attendue. Donc, si le résultat attendu est dans la cellule C2, la formule retournera la valeur de C3. –

+0

Sur quelle ligne commencent vos données? –

+0

Ligne 2. La ligne 1 contient les en-têtes de colonne. J'ai juste augmenté la gamme pour l'index et maintenant il tire la bonne valeur de cellule. –