Zagnieżdżona instrukcja IF

0

Mam problem z tym kodem dla zagnieżdżonej instrukcji = IF. Zakres jest w zasadzie:

<= 16, aby uzyskać 5 pkt
16-17, aby uzyskać 4 pkt
17–18, aby uzyskać 3 pkt
18–19, aby uzyskać 2 pkt
powyżej 19, aby uzyskać 1 pkt

a mój kod to:

=IF(D50<=16,5,IF(AND(D50>16,D50<=17),4,IF(AND(D50>17,D50<=18),3,IF(AND(D50>18,D50<=19),2,IF(D50>19),1 ,0))))

Myślę, że to prawda, ale wciąż pokazuje mi błędy.

anand
źródło
Czy próbowałeś nawet rozwiązać ten problem? MS automatycznie wyskakuje błąd i podświetla problematyczną część formuły jako nawias / nawias po D50>19.
David Zemens
2
Myślę, że ten, który zdecydował się na tę składnię dla klauzuli excell, powinien przejść prosto do piekła. Szybko staje się nieczytelny ...
Laurent S.
Myślę, że rozsądnie byłoby zignorować opinię osoby, która nie potrafi przeliterować prostego słowa, takiego jak „Excel”, jednocześnie skarżąc się, że praca z produktem jest zbyt trudna. @Bartdude
ExactaBox

Odpowiedzi:

3

Przesuń prawy nawias po ostatnich 19 na koniec funkcji:

JEŻELI (D50 <= 16,5, JEŻELI (I (D50> 16, D50 <= 17), 4, JEŻELI (ORAZ (D50> 17, D50 <= 18), 3, JEŻELI (I (D50> 18, D50 <= 19), 2, JEŻELI (D50> 19,1, 0)))))

użytkownik614127
źródło
2

Operatory AND nie są tak naprawdę wymagane - na przykład pierwszy IF zajmuje się dowolnymi wartościami <= 16, więc dla następnego IF nie trzeba podawać> 16, to musi być przypadek - podobnie ostatni IF nie jest wymagany - to nie może być FAŁSZ, ponieważ wyczerpałeś wszystkie inne możliwości.

Chciałbym zacząć od drugiego końca spektrum - ta formuła powinna dać wymagane wyniki:

=IF(D50>19,1,IF(D50>18,2,IF(D50>17,3,IF(D50>16,4,5))))

Barry Houdini
źródło
1

Usuń) po D50> 19

=IF(D50<=16,5,IF(AND(D50>16,D50<=17),4,IF(AND(D50>17,D50<=18),3,IF(AND(D50>18,D50<=19),2,IF(D50>19,1,0)))))
Declan_K
źródło