Recherche avec plusieurs conditions

Bonsoir,

J'essaie d'enchainer plusieurs conditions pour que Excel me sorte une certaine valeur dans une cellule précise. Mais cela ne s'effectue pas correctement. Je vous transmet mon fichier joint.

Ce que je souhaite exactement :

La cellule C20 doit contenir la formule appropriée pour afficher le modèle d'imprimante (a , b ou c) qui respecte TOUS les critères indiqués dans les cellules C13 à C17. Pour afficher un modèle en réponse dans la cellule C20 vous devez utiliser la cellule appropriée de la ligne 3 (soit C3, D3 ou E3). La cellule C21 devra afficher "oui" ou "non" suivant que le prix de l'imprimante qui est affichée en C20 respecte le montant du budget que le gestionnaire a inscrit dans la cellule C18. Pour la cellule C20, si aucun modèle d'imprimante répond aux besoins du gestionnaire, alors vous devrez afficher "aucun modèle disponible" et si c'est le cas qu'aucun modèle n'est disponible alors la cellule C21 devra afficher "aucune imprimante sélectionnée".

A chaque fois la cellule C20 m'affiche "modèle A" ou "Faux"

merci de votre aide

22projet-impri.xlsx (10.42 Ko)

Bonjour kass15

Que penses-tu de ma solution ?

Regardes en feuil2 de ton classeur modifié !

Bonjour,

Tu m'excuseras de ne pas utiliser tes noms de plages mais dans la mesure où on allonge considérablement les formules avec, j'aime autant m'en passer...

Pour raccourcir encore un peu les formules :

  • mettre en F3 : aucun modèle disponible
  • mettre en F9 : aucune imprimante sélectionnée

Formule en C20 :

=INDEX(C3:F3;4-SOMMEPROD((C4:E4=C13)*(C5:E5=C14)*(C6:E6=C15)*(C7:E7=C16)*(C8:E8=C17)*{3.2.1}))

Une petite explication paraît utile : je ne reviens pas sur l'utilisation de SOMMEPROD dans ce cadre, si les 5 premières matrices répondent aux conditions, leur produit sera 1 et la valeur correspondante de la dernière matrice sera renvoyée, c'est du classique. Il aurait donc été logique de mettre comme dernière matrice {1.2.3} afin de définir l'index dans la plage C3:E3.

Seulement, dans le cas où aucune imprimante ne répond aux conditions la valeur renvoyée serait 0, et dans ce cas la fonction INDEX ne renvoie pas d'erreur (qu'on aurait pu inhiber) mais renvoie toute la plage, dont ne s'affiche que la première valeur, ce qui serait ici particulièrement gênant puisque modèle A serait systématiquement affiché en cas de non correspondance !

En inversant les valeurs de la dernière matrice, et en soustrayant la valeur renvoyée par SOMMEPROD de 4, on évite le 0 d'une part, remplacé par un 4, et on en tire profit d'autre part pour faire renvoyer l'absence d'imprimante en élargissant la plage d'application de la fonction INDEX.

Formule en C21 :

=SI(C20=F3;F9;SI(RECHERCHE(C20;C3:E3;C9:E9)<=C18;"Oui";"Non"))

Là pas de commentaire particulier.

Cordialement

Ferrand

bonjour a tous

pour le fun ; avec presentation du modele le plus proche (budjet/criteres)

15andrea73.xlsx (10.74 Ko)

cordialement

Tu t'es gouré dans le nom... (pas grave). Je prends volontiers ta simplification sur la comparaison de plages.

Mais si on sophistique jusqu'au bout, il faudra rééclater par critères, pour ne pas rejeter les offres supérieures à la demande.

Tu as pris un peu d'avance dans ce sens mais faut aller à terme !!

(Pas le temps en ce qui me concerne, trop de choses en cours en même temps)

bonsoir M ferrand

j'y avais bien pensé , et meme avec un carractere prioritaire dans le choix des criteres ;histoire se pouvoir quand meme se rabattre sur un autre produit plus ou moins similaire dans une fourchette de prix

pour ce faire il faudrait mettre un coef a chaque option du produit ......

pour l'instant : wait and see

cordialement

merci a tous

Rechercher des sujets similaires à "recherche conditions"