Excel 2010 — Объединение двух функций «ЕСЛИ» в одной ячейке

Excel 2010 — Объединение двух функций «ЕСЛИ» в одной ячейке

Заранее извиняюсь, если мое объяснение запутанное, хаха.

У меня есть две ячейки (D2 и D4), которые я хочу сложить, но есть два условия, основанные на двух других ячейках (B2 и B4): «если B2 меньше 1, то значение в D4 не включается».
«Если B4 больше 75, то значение в D2 не включается». В этом случае, если B2 меньше 1, а B4 больше 75, результат должен быть равен 0.

фото1

Я попробовал использовать функции ЕСЛИ для решения этой задачи (на рисунке они находятся в ячейках F2 и F4):

=IF(B2<1;D2;D2+D4)
=IF(B4>75;D4;D2+D4)

Но мне нужно объединить их в одну ячейку. Я думал, что это сработает, если я использую =IF(B2<1;D2;IF(B4>75;D4;D2+D4)), но вместо того, чтобы получить 0, если B2<1 и B4<75, он проигнорировал второе условие и дал мне «истинное» значение первого (D2).

фото2

Есть ли способ заставить это работать, может быть, переставив формулу ЕСЛИ по-другому или, может быть, даже используя другую формулу или процедуру?

решение1

Это можно сделать вообще без операторов IF:

= (B4<=75)*D2 + (B2>=1)*D4

При этом используется тот факт, что логические тесты рассматриваются как 1истинные и 0ложные.

Итак, вы хотите включить D2, только если B4 <= 75. Выражение в первых скобках проверяет это. Если это правда, вы получаете 1 x D2. Если ложь, вы получаете 0 x D2.

Та же логика применима к D4. Затем вы добавляете все имеющиеся там значения.

решение2

Используйте следующую формулу:
=ЕСЛИ(B2<1;ЕСЛИ(B4<=75;D2;0);ЕСЛИ(B4<=75;D2+D4;D4))
в вашей формуле вы не проверили когда B2 < 1 если B4 > 75

решение3

Мне немного трудно понять, что вы пытаетесь сделать, но из того, что я могу сделать, вы хотите использовать либо функцию AND, либо функцию OR внутри вашего if. Это два основных способа объединения двух разных условий.

И:https://support.office.com/en-us/article/AND-function-5f19b2e8-e1df-4408-897a-ce285a19e9d9

ИЛИ:https://exceljet.net/excel-functions/excel-or-function

Связанный контент