Операторы регистра в операторах SWITCH в Google Таблицах

Oct 24 2020

Я обновляю таблицу Google. В этой таблице Google мне нужно отобразить оценку учащегося, основанную на определенных отсечениях. Я думал, что инструкция SWITCH будет правильным подходом. Однако, исходя из этой документации, похоже, что операторы case - это сопоставления, а не условные выражения. Это кажется неправильным. Я чувствую, что что-то неправильно понимаю. На этот раз у меня есть следующее SWITCHутверждение.

=SWITCH(85, 85<=60, "F", 85<=70, "D", 85<=80, "C", 85<=90, "B", 85<=100, "A", "Unknown")

85это значение в ячейке. Я вручную поставил на отладку. Однако это утверждение всегда приводит к «Неизвестно». Есть ли способ использовать условные операторы в операторе SWITCH?

Спасибо.

Ответы

3 marikamitsos Oct 24 2020 at 21:23

Вместо этого вы должны использовать функцию IFS.

=IF(LEN(A2),IFS(A2<=60, "F", A2<=70, "D", A2<=80, "C", A2<=90, "B", A2<=100, "A"),"Unknown")

Используя дополнительную функцию ArrayFormula, мы применяем одну и ту же формулу к каждой строке для всего диапазона

=ArrayFormula(IF(LEN(A2:A), 
    IFS(A2:A<=60, "F", A2:A<=70, "D", A2:A<=80, "C", A2:A<=90, "B", A2:A<=100, "A"),""))  

1 ZoranJankov Oct 24 2020 at 21:58

Вы используете неправильную функцию. Вместо этого используйте IFS.

Ваш пример:

=IFS(A1<=60; "F"; A1<=70; "D"; A1<=80; "C"; A1<=90; "B"; A1<=100; "A")