excel
2013-04-02 15 views 9 likes 
9

Muszę napisać wyrażenie "jeśli" w programie Excel na podstawie tekstu w dwóch różnych komórkach.Wiele instrukcji IF i instrukcji excel

If E2 ='in play' and F2 ='closed'  output 3 
If E2= 'in play' and F2 ='suspended' output 2 
If E2 ='In Play' and F2 ='Null'  output 1 
If E2 ='Pre-Play' and F2 ='Null'  output -1 
If E2 ='Completed' and F2 ='Closed'  output 2 
If E2 ='Suspended' and F2 ='Null'  output 3 
If anything else output -2 

gdzie Null ma wartość w komórce

starałem się zrobić to z poniżej kod, ale nie wydaje się uzyskać dwa lub więcej wtedy i oświadczenia współpracy. Jak mogę rozwiązać ten problem?

=IF(AND(E2="In Play",F2="Closed"),3, -2), IF(AND(E2="In Play",F2=" Suspended"),3,-2) 

Odpowiedz

16

Uważają, że masz wiele "testy", np

  1. Jeśli E2 = 'w grze' i F2 = 'zamknięte', wyjście 3
  2. Jeśli E2 = 'w grze' i F2 = 'zawieszone', wyjście 2
  3. Etc.

Co naprawdę trzeba zrobić, to umieścić kolejne testy w False argument. Obecnie próbujesz oddzielić każdy test przecinkami, a to nie zadziała.

trzech pierwszych testów mogą być połączone w jednej wypowiedzi jak:

=IF(E2="In Play",IF(F2="Closed",3,IF(F2="suspended",2,IF(F2="Null",1))))

Pamiętając, że każda kolejna próba musi być zagnieżdżona FAŁSZ argument poprzednim teście, można to zrobić:

=IF(E2="In Play",IF(F2="Closed",3,IF(F2="suspended",2,IF(F2="Null",1))),IF(AND(E2="Pre-Play",F2="Null"),-1,IF(AND(E2="completed",F2="closed"),2,IF(AND(E2="suspended",F2="Null"),3,-2))))

+0

+1 Dawida, I zawiedli nawiasy na kopalni - Zdałem sobie sprawę, że kiedy zobaczyłem swoją wersję! Teraz edytowane ...... –

+0

nie martw się, opublikowalem moje tylko po to, aby mnie pokonać do tego :) –

8

Przy użyciu ORAZ nie powinno się mieć wartości FAŁSZ -2, dopóki nie pojawi się na samym końcu, np. z zaledwie 2 AND

=IF(AND(E2="In Play",F2="Closed"),3,IF(AND(E2="In Play",F2=" Suspended"),3,-2))

chociaż mogłoby być lepiej z kombinacji zagnieżdżonych FI oraz AND - Spróbuj tak dla pełnego wzoru: [Edytowane - dzięki David]

=IF(E2="In Play",IF(F2="Closed",3,IF(F2="Suspended",2,IF(F2="Null",1))),IF(AND(E2="Pre-play",F2="Null"),-1,IF(AND(E2="Completed",F2="Closed"),2,IF(AND(E2="Pre-play",F2="Null"),3,-2))))

Aby uniknąć długiej formuły takiej jak powyższa, możesz utworzyć tabelę z wszystkimi możliwościami E2 w kolumnie takiej jak K2: K5 i wszystkimi możliwościami F2 w rzędzie, jak L1: N1, a następnie wypełnić wymagane wyniki w L2: N5 i użyć tej formuły

=INDEX($L$2:$N$5,MATCH(E2,$K$2:$K$5,0),MATCH(F2,$L$1:$N$1,0))

1

Spróbuj wykonać następujące czynności:

=IF(OR(E2="in play",E2="pre play",E2="complete",E2="suspended"), 
IF(E2="in play",IF(F2="closed",3,IF(F2="suspended",2,IF(ISBLANK(F2),1,-2))), 
IF(E2="pre play",IF(ISBLANK(F2),-1,-2),IF(E2="completed",IF(F2="closed",2,-2), 
IF(E2="suspended",IF(ISBLANK(F2),3,-2))))),-2) 
-1

Dokonywanie tych 2 komunikować

=IF(OR(AND(MID(K27,6,1)="N",(MID(K27,6,1)="C"),(MID(K27,6,1)="H"),(MID(K27,6,1)="I"),(MID(K27,6,1)="B"),(MID(K27,6,1)="F"),(MID(K27,6,1)="L"),(MID(K27,6,1)="M"),(MID(K27,6,1)="P"),(MID(K27,6,1)="R"),(MID(K27,6,1)="P"),ISTEXT(G27)="61"),AND(RIGHT(K27,2)=G27)),"Good","Review") 

=IF(AND(RIGHT(K27,2)=G27),"Good","Review") 
Powiązane problemy