Упростите формулу calc / excel с помощью If / And - PullRequest
1 голос
/ 09 мая 2020

Как я могу сделать это проще:

IF(AND(C$36>140;D$36>140;E$36>140);"OK";IF(AND(D$36>140;E$36>140;F$36>140);"OK";IF(AND(E$36>140;F$36>140;G$36>140);"OK";IF(AND(F$36>140;G$36>140;H$36>140);"OK";"NO"))))

Эта формула находится в I38.

Идея состоит в том, чтобы проверить, были ли в 6 ячейках до (на строка 36), 3 в ряд выше 140. Итак, ячейки от C36 до H36.

Мне интересно, можно ли сделать это проще / красивее. А также чтобы ii повторить это.

Ответы [ 2 ]

1 голос
/ 09 мая 2020

Формулу можно сократить до СЧЁТЕСЛИ . Кроме того, отдельные формулы упрощают чтение.

Введите =COUNTIF(C36:E36;">140") в ячейку E37, а затем перетащите вправо, чтобы заполнить H37.

Установите I38 на =IF(COUNTIF(E37:H37;"=3");"OK";"NO") .

EDIT :

Первая формула проверяет каждый набор из 3 ячеек в строке, чтобы узнать, сколько чисел в наборе превышает 140. Вторая формула проверяет, если любой результат равен 3. Если это так, то есть по крайней мере один набор, в котором 3 из 3 больше 140.

Объединение этого в одну формулу будет выглядеть так:

=IF(OR(COUNTIF(C36:E36;">140")=3;COUNTIF(D36:F36;">140")=3;COUNTIF(E36:G36;">140")=3;COUNTIF(F36:H36;">140")=3);"OK";"NO")

Или так:

=IF(MAX(COUNTIF(C36:E36;">140");COUNTIF(D36:F36;">140");COUNTIF(E36:G36;">140");COUNTIF(F36:H36;">140"))=3;"OK";"NO")
0 голосов
/ 10 мая 2020

Мне нравится ваша идея создания этой формулы, однако вы можете немного улучшить ее, используя комбинацию функций OR и MIN.

Попробуйте это:

=IF(OR(MIN($C$1:$E$1)>140,MIN($D$1:$F$1)>140,MIN($E$1:$G$1)>140,MIN($F$1:$H$1)>140),"ok","No")
...