Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 JOINDRE UNE CONDITION SI DANS UNE SUITE D'INDEX

br44

XLDnaute Impliqué
Bonjour le forum , je me permet de revenir vers vous pour une petite question ? voilà j'ai écrit cette formule : *

=INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1);(INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1));INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1);INDEX(P87:AA96;EQUIV(A483;Q87:Q96;0);1);INDEX(P102:AA111;EQUIV(A483;Q102:Q111;0);1);INDEX(P116:AA120;EQUIV(A483;Q116:Q120;0);1) pour recherche le résultats de la cellule A483 dans le bon index .je souhaiterais qu'il passe d'un index à 'autre si il de ne trouve pas la correspondance exact ?

Pour l'exemple la valeur rechercher (A483) se situe dans le deuxième index ici en bleu . se qui me donnerais si A 483 est dans le premier , alors affiche le résultat sinon passe à la recherche suivantes et ainsi de suite ,

il me faut juste la clé où la bonne syntaxe pour faire la liaison des deux fonction entre la condition et la recherche .

en vous remerciant par avance et en espérant que je sois claire je vous souhaites une excellentes journée . Br44
 
Solution
Bonjour,

Essayez ceci
VB:
=SIERREUR(INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1);
SIERREUR(INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1);
SIERREUR(INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1);
SIERREUR(INDEX(P87:AA96;EQUIV(A483;Q87:Q96;0);1);
SIERREUR(INDEX(P102:AA111;EQUIV(A483;Q102:Q111;0);1);
SIERREUR(INDEX(P116:AA120;EQUIV(A483;Q116:Q120;0);1);""))))))

Cdlt

Rouge

XLDnaute Impliqué
Bonjour,

Essayez ceci
VB:
=SIERREUR(INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1);
SIERREUR(INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1);
SIERREUR(INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1);
SIERREUR(INDEX(P87:AA96;EQUIV(A483;Q87:Q96;0);1);
SIERREUR(INDEX(P102:AA111;EQUIV(A483;Q102:Q111;0);1);
SIERREUR(INDEX(P116:AA120;EQUIV(A483;Q116:Q120;0);1);""))))))

Cdlt
 

Rouge

XLDnaute Impliqué
Avec SI
Si TEST_1=VRAI, TEST_1,
Si TEST_2 = VRAI, TEST_2,
Si TEST_3 = VRAI, TEST_3, etc...
Sinon ""

Si le test est vrai, il faut recopier la condition, sinon on passe au suivant, et ce pour chaque condition
Ce qui donne dans votre cas pour les 3 première conditions:
=SI(INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1)=vrai;INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1);
SI(INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1)=vrai;INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1)
SI(INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1)=vrai;INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1); "")

Avec SIERREUR
SIERREUR TEST_1,
SIERREUR TEST_2 ,
SIERREUR TEST_3 , etc...
sinon ""

Ce qui donne dans votre cas pour les 3 première conditions:
=SIERREUR(INDEX(P44:AA53;EQUIV(A483;Q44:Q53;0);1);
SIERREUR(INDEX(P59:AA68;EQUIV(A483;Q59:Q68;0);1);
SIERREUR(INDEX(P73:AA82;EQUIV(A483;Q73:Q82;0);1);
""

la différence: Avec SI, on teste la condition, si elle est vraie, on recopie la condition et on s'arrête là , si elle est FAUSSE, on passe à la condition suivante, etc...
SIERREUR est simple d'utilisation et permet raccourcir les formules avec une lecture plus claire.

Voilà
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…