Problème test multiple Excel 2016

Résolu/Fermé
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017 - 26 juil. 2017 à 08:56
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017 - 26 juil. 2017 à 15:20
Bonjour,

Je tourne en rond depuis plusieurs jours sur un problème de teste multiple, pour la valeur d'une cellule dans Excel 2016.

Les 2 tests indépendamment fonctionnent, mais quand je les réunis dans une fonction OU, seul le 1er cas marche correctement.

Voici mes tests indépendants :

=SI((RECHERCHEV(H2;A:F;4;FAUX))="OUI";"OK";"NOK")

=SI((ET(H2="-";D2="OUI"))=VRAI;"OK";"NOK")

Voici le test dans la fonction OU :

=SI((OU((RECHERCHEV(H2;A:F;4;FAUX))="OUI";(ET(H2="-";D2="OUI"))=VRAI))=VRAI;"OK";"NOK")

Je ne vois pas où est mon erreur, pouvez-vous m’aider ?

Merci d’avance.
Ithron
A voir également:

4 réponses

diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844
Modifié le 26 juil. 2017 à 09:12
Bonjour,

Déjà un truc peu agréable... vous ouvrez beaucoup trop de parenthèses inutile... pas besoin d'en ouvrir 2 pour un SI. Ça peut vous embrouillez et provoquez des erreurs.

Il en est de même que vous avez pas besoin de préciser "=VRAI" pour un ET. La fonction SI vérifie déjà par défaut que ça vaut VRAI. Il faut le préciser uniquement si c'est un résultat différent que vous voulez ( Ex: Si(A1+A3 = "12";"Ok";"NOk)

Je vous corrige vos 2 premières formules, vous comprendrez.

=SI(RECHERCHEV(H2;A:F;4;FAUX)="OUI";"OK";"NOK")

=SI(ET(H2="-";D2="OUI");"OK";"NOK")

Concernant votre formule qui mélange les deux :

=SI(OU(RECHERCHEV(...);ET(...));"OK";"NOK")

Vous pouvez essayer comme ceci en complétant et me dire si le résultat vous satisfait

A Vaincre sans péril, on triomphe sans gloire.
Pierre Corneille, Le Cid 
1
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844
26 juil. 2017 à 09:46
Je ne suis pas sur de ce que je vais vous envoyer par la suite,

Essayer avec la formule suivante:

=SI(OU(SIERREUR(RECHERCHEV(...);0);ET(...));"OK";"NOK")

Si cette fonction ne marche pas je vous donnerais une autre formule qui fonctionnera même si un peu plus compliqué en terme de ressource Excel.
1
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017
26 juil. 2017 à 09:29
Bonjour,

Merci pour les simplifications, je ne suis pas alaise avec les formules Excel.

Le résultat est le même (#N/A), mais je pense avoir touvé pourquoi dans l'aide d'Excel.
C'est la fonction RECHERCHEV qui renvoit l'érreur, car elle ne trouve pas la valeur demandé. Seulement c'est normale qu'elle ne la trouve pas puisque c'est le but.
Valeur trouvé -> Revois de la valeur d'une cellule de la ligne pour vérifié qu'elle est à OUI, si c'est le cas OK sinon NOK.
Valeur non trouvé -> NOK

Je pense donc qu'il faut, soit géger les erreurs, soit utiliser une autre méthode.

Pouvez-vous m'orienter vers la solution la plus adapté ?

Merci d'avance
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
26 juil. 2017 à 09:49
Bonjour,

remplace la partie par :
sierreur(ta_formule;"NOK"
)
Plutôt qu'un recherchev() pour savoir si H2 est présent tu peux utiliser nb.si(...;...)>0
eric
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844 > eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024
26 juil. 2017 à 09:53
Bonjour Eriiic,

Plutôt un NB.SI.ENS dans son cas:) puisqu'il a deux condition a satisfaire dans sa première formule (Qu'en A il y ai H2 et qu'en D il y ai "OUI")

Mais en effet c'était l'autre truc à faire
0
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017
26 juil. 2017 à 10:13
Bonjour,

Cela corige bien le problème, mais en génére une autre.
Nous avions une erreur sur la valeur "-", puisque introuvable dans la matrice, et votre modification régle ce problème. Mais losque la cellule prend une valeur numérique qui est l'autre cas, la fonction RECHECHEV renvois une valeur OUI ou NON, et la formule ne peut traiter ce cas et génère une erreur "#VALEUR!"

Je me rends compte, que se que je demande est pas simple.

Merci pour votre aide.
Ithron
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844
26 juil. 2017 à 10:44
Bon on va stopper avec le RechercheV qui a l'air d’être pas terrible dans votre configuration de recherche.

Essayez avec la formule suivante :

=si(ou(NB.SI.ENS(A:A;H2;D:D;"Oui")=1;ET(...));"OK";"NOK")
0
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017 > diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024
26 juil. 2017 à 15:08
Un grand Merci, cela marche super bien.

Il ne me reste plus qu'a comprendre le fonctionnement pour le reproduire.

Ithron
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 844
26 juil. 2017 à 15:09
Bonjour,

Pour faire simple , il s'agit d'une formule qui compte le nombre de fois en en A tu as H2 et en D "OUI".

Si ça vaut 1, ça existe.

Le reste de la formule ne devrait pas vous poser problème
0
Ithron Messages postés 12 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 3 août 2017 > diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024
26 juil. 2017 à 15:20
OK merci j'ai compris.

Je ferme marque la question comme résolut.

Ithron.
0