Excel "And" e "Or" Command


4

Ho notato che il comando "E" e "O" non danno costantemente la risposta corretta.

1) Formula "E" =if(And(B2,C2>3), "Yes", "No")

 input Cell B2=4 and Cell C2=3, yield answer "No"

Capovolgi l'input Cell B2 = 3 e Cell C2 = 4, ottieni risposta "Sì"

2) "O" Formula =if(Or(B2,C2>3), "yes","No")

 Input Cell B2=0 and Cell C2=3, yield "No"

Capovolgi l'input Cell B2 = 3, Cell B2 = 0, resa "Sì"

Spero che qualcuno possa illuminare questo.

Risposte:


24

Non lo stai usando correttamente.

=if(And(B2,C2>3), "Yes", "No")

dovrebbe essere

=if(And(B2>3,C2>3), "Yes", "No")

Hai bisogno di una condizione per ogni argomento di AND, non una lista di celle da testare contro una singola condizione.

Lo stesso per OR

=if(Or(B2>3,C2>3), "yes","No")

Ciò consente di testare condizioni diverse per argomento, che è il comportamento progettato.

Al momento vedrà il tuo primo argomento e deciderà se pensa che sia vero o falso basato esclusivamente su ciò che trova in quella cella, il quale avrà un comportamento strano a seconda di quale Excel ritiene che la risposta appropriata sarebbe (ad es. 0 = falso, 1 = vero).


2
Jonno, la funzione AND () NON ha bisogno di una condizione per verificare True o False. Qualsiasi valore numerico diverso da zero verrà valutato su True. Uno zero valuterà in falso. Per provare questo prova questa formula e inserisci i valori in B2: = IF (B2, "True", "False")
B540Glenn

@ B540Glenn Sembra che tu abbia ignorato la mia ultima frase.
Jonno

1
Non ignorato, ma non ho trovato chiaro su non richiedere specificamente un'istruzione condizionale nella finzione AND ().
B540Glenn

5

St-Lim,

Le tue formule stanno funzionando come dovrebbero

E : =if(And(B2,C2>3), "Yes", "No")

Con la cella di input B2 = 4 e la cella C2 = 3, la risposta "No" è corretta. B2 valuta True. C2 non è maggiore di 3, quindi valuta False. Vero e Falso = Falso.

Con la cella di input B2 = 1 e la cella C2 = 5, la risposta "Sì" è corretta. B2 valuta True. C2 è maggiore di 3 in modo che valuti su Vero.
Vero e Vero = Vero

O : =if(Or(B2,C2>3), "yes","No")

Con la cella di input B2 = 3 e la cella C2 = 4, la risposta dovrebbe essere "Sì" Qualsiasi valore numerico diverso da zero in B2 valuterà su True. 4 è maggiore di 3 quindi C2 & gt; 3 valuta anche True.
Vero o Vero = Vero.

Con la cella di input B2 = 0 e la cella C2 = 4, la risposta dovrebbe essere anche "Sì"
B2 = 0 è False, 4 è maggiore di 3. False o True = True.

Con la cella di input B2 = 0 e la cella C2 = 1, la risposta dovrebbe essere "No"
B2 = 0 è False, 1 NON è maggiore di 3. False o False = False.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.