Si(ET... j'en perdais la boule

Résolu/Fermé
Sidésespérée - 21 juin 2016 à 13:55
Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024 - 22 juin 2016 à 17:56
Bonjour,

Je cherche la bonne façon de construire ma formule mais je n'y parviens pas excel me donne toujours une erreur et je n'ai trouvé sur le net aucun cas de figure similaire au mien... vraiment besoin de votre aide! Je vous l'inscrit en deux portions distinctes et la conséquence pour finir, espérant que quelqu'un saura en faire une fusion harmonieuse !! :)

SI(ET(A1="0";P1="")

ou que

SI(ET(A1="0";P1="NON VIDE")


vrai "YES"
faux ""

J'arrive à formuler l'une ou l'autre mais pas les deux ensemble!!

Merci à l'avance!!

4 réponses

via55 Messages postés 14401 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 17 avril 2024 2 701
21 juin 2016 à 14:00
Bonjour

Essaie:
=SI(ET(A1="0";OU(P1="";P1="NON VIDE"));"YES";"")

mais si A1 contient une valeur numérique il ne faut pas mettre de "" autour du 0

Cdlmnt
Via

0
Sidésespérée
22 juin 2016 à 02:06
ça ne fonctionne pas, en fait, si, la formule fonctionne mais elle ne réagit pas comme espéré.. elle donne toujours la même réponse, soit réponse fausse même quand la réponse devrait être vraie :/ j'en déduis que je formule mal.... si tu permets je fais quelques tests pour formuler autrement et te reviens (c'est que c'est un fichier qui s'auto-feed d'un data extérieur)

Merci pour ton aide !
0
Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024 17 088
22 juin 2016 à 02:26
Oui, tu formules mal, en demandant la même chose pour P1 vide et P1 non vide !
Tu devrais avoir
=SI(ET(A1="0";P1="");"Yes";"No") ou
=SI(ET(A1="0";P1<>"");"Yes";"No") ou
=SI(ET(A1="0";P1="");"No";"Yes") ou
=SI(ET(A1="0";P1<>"");"No";"Yes") selon ce que tu veux afficher ...

Il faut aussi prendre en considération la remarque de via55 sur le choix entre le texte
"0"
et le nombre
0
!
0
Sidésespérée > Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024
22 juin 2016 à 04:05
Oui je réalise le non sens initial ... :/ et aussi que j'ai omis dans ma demande d'aide initiale, une autre condition et un critère...

donc voilà... ce serait en définitive:

=SI(ET(B1>0;P1="");"YES";"") OU
=SI(ET(B1>0;P1>0);"PREOPENED";"YES") OU
=SI(B1=0);"YES";"") (ajout)

pour la 2e ligne, j'aimerais rajouter un 3e critère essentiel dans cette série mais je ne sais l'exprimer en dialecte excel : Q1 n'est pas vide (le code NON VIDE ne semble pas être bon, excel ne réagit pas à ce critère quand je le mets). Peu importe le code, il faut qu'il tienne compte dès qu'une lettre ou un chiffre y est inscrit car c'est le type de donnée qui se retrouve dans cette colonne (alors que les colonnes B et P ne contiennent uniquement des chiffres lorsque remplies).


Merci encore à l'avance pour votre aide (et votre patience!)
0
Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024 17 088
22 juin 2016 à 06:21
Ta logique est très approximative, et ne permet pas d'écrire une formule.

=SI(ET(B1>0;P1="");"YES";"") OU 
=SI(ET(B1>0;P1>0);"PREOPENED";"YES")
contient encore une redondance.

En effet tu dis
si P1="", donc est vide (valeur nulle), on affiche "YES" ; sinon on affiche "".

Et tout de suite après tu dis
si P1 n'est pas ="", on affiche "PREOPENED".

Alors lequel des deux faut-il afficher ?
0
Sidésespérée
22 juin 2016 à 14:20
Oui, j'aurais dû retravailler dessus à tête reposée car j'ai trouvé ce matin!

En fait, en inscrivant >0 plutôt que "0" je rempli toutes mes conditions (sauf le 3e critère que je voulais ajouter mais bon je vivrai sans.. tantpis)

SI(ET(B1>0;P1>0);"";"YES") !

Merci à vous deux pour votre aide !
0
Raymond PENTIER Messages postés 58388 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 17 avril 2024 17 088
22 juin 2016 à 17:56
Essaie donc
SI(ET(B1>0;P1>0 ;Q1<>"" );"";"YES")
0