Страницы: 1
RSS
Логические функции в массиве, Применение формул массива при подсчете результатов вычислений логических функций
 
Здравия.
Дано: таблица со столбцами A2:A9 и B2:B9 заполненными значениями "ЛОЖЬ" и "ИСТИНА".
Необходимо произвести операцию "И" построчно с этими столбцами и как результат получить сумму "ИСТИН"
Делать доп. столбцы для вычислений нельзя. Формулу подсчета записать в одну ячейку.
Если с умножением еще можно попробовать преобразовать все значения в 0,1 заменить И на * далее подчитать сумму единиц в результатах вычислений и тд используя формулы массива,
то при операции ИЛИ замена ИЛИ на + приведет к плачевному результату. 1 или 1 =1  но 1+1=2.

Хочется использовать типа {=СЧЁТЕСЛИ(И(A2:A9;B2:B9);ИСТИНА)} но не можется...
 
Симметрично.
Попробуйте массивной такой:
Скрытый текст
Кому решение нужно - тот пример и рисует.
 
Спасибо, работает. Решение понятно.

=СУММ(--(--(A2:A9)=1)*(--(B2:B9)=1))
а зачем после первой скобки "--"?
Второй вопрос - те же данные но операция "ИЛИ". Как обойти 1+1=2?
 
формула считает изнутри наружу.
1. Сравнили А2 с 1. Получили ЛОЖЬ
2. Через -- ЛОЖЬ превратили в 0
3. Сравнили В2 с 1. Получили ИСТИНА
4. Через -- ИСТИНА превратили в 1
5. Перемножили 0*1 =0
6. Сравнили 0 с 1 получили ЛОЖЬ
7. Через -- превратили ЛОЖЬ в 0
8. Просуммировали
Если шаг 7 не делать, то СУММ будет пытаться работать с ЛОЖЬ, а ей это неприятно.

с ИЛИ попробуйте через условие ">0" и суммирование, а не перемножение.
Изменено: Пытливый - 08.04.2022 14:22:31
Кому решение нужно - тот пример и рисует.
 
Цитата
Денис Безгубов написал:
а зачем после первой скобки "--"?
в данной формуле - избыточно, также есть лишние скобки (которые можно убрать)
Код
=СУММ((--A2:A9=1)*(--B2:B9=1))

а можно еще упростить
Код
=СУММ(A2:A9*B2:B9)

Код
=СЧЁТ(1/A2:A9/B2:B9)


для ИЛИ можно так записать
Код
=СУММ(Ч(A2:A9+B2:B9>0))

Код
=СЧЁТ(1/(A2:A9+B2:B9))
Изменено: MCH - 08.04.2022 14:37:24
Страницы: 1
Наверх