Renvoyer valeur en fonction des valeurs d'une plage de données

Bonjour à tous,

J'aurais besoin de vos lumières svp pour un souci que j'ai dans une formule que je construis.

Voici le sujet :

Dans une feuille de mon classeur, j'ai une plage de données de A1:A10 qui contient les valeurs suivantes : "KO"; "OK"; "Incomplet"; " ".

Je souhaite renvoyer le résultat dans une feuille à part selon les critères suivants :

- si dans la plage de données (A1:A10) toutes les valeurs des cellules sont = OK, alors renvoyer "OK";

- si dans la plage de données (A1:A10) au moins une valeur est = KO, alors renvoyer "KO";

- si dans la plage de données (A1:A10) au moins une valeur est = Incomplet, alors renvoyer "Incomplet" (sachant que le "KO" doit prévaloir sur le "incomplet");

- si dans la plage de données (A1:A10) aucune des cellules n'est remplie, alors renvoyer " " (vide);

- sinon renvoyer Vide

Voici mon ébauche de formule : =SI(NB.SI(A1:A10;"KO");"KO";SI(NB.SI(A1:A10;"OK");"OK";SI(NB.SI(A1:A10;"Incomplet");"Incomplet";"")))

Cela fonctionne partiellement : si je supprime tous les "KO" de la plage, ça me renvoie "OK" alors qu'il y a aussi des cellules vides et des cellules avec la valeur "incomplet", ça devrait donc me renvoyer "incomplet" selon les critères que je souhaite.

Toute aide est la bienvenue :)

Merci d'avance!

bonsoir

si(nb.si(a1:a10;"><")=0;"vide";SI(NB.SI(a1:a10;"ok")=10;"ok";INDEX({"";"ko";"incomplet"};SOMMEPROD(MAX((C1:C10={"ok"."ko"."incomplet"})*COLONNE(A:C))))))

a tester voire enrichir

Salut Stardust,
Salut Tulipe_4 (tout juste vu...),

=SI(NB.SI(A1:A10;"OK")=10;"OK";SI(NB.SI(A1:A10;"KO")>0;"KO";SI(NB.SI(A1:A10;"Incomplet")>0;"Incomplet";"")))


A+

Salut Tulipe_4 et Curulis57,

Merci beaucoup. Vous êtes trop brillants :-)

La formule fonctionne, je l'ai adaptée.

Pour ma compréhension, et pour mes futures formules :

Quand on écrit SI(NB.SI(... =10 ==> ça signifie qu'on parcourt l'ensemble des 10 lignes? (afin de vérifier que pour tous les champs compris dans la plage de données il n'y ait que des OK, pour afficher un résultat "OK" dans mon exemple), donc si ma plage de référence est plus étendue, je devrais adapter ce chiffre, n'est ce pas?

Et pour SI(NB.SI(... >0 ? ==> c'est la traduction de "au moins présent dans une cellule dans la plage" (car >0 )?

Merci encore!

Rechercher des sujets similaires à "renvoyer valeur fonction valeurs plage donnees"