Страницы: 1
RSS
если с диапазоном ячеек, проверка данных в диапазоне ячеек, если и впр
 
Доброго времени суток уважаемые форумчане!
Нужна помощь, застопорилась в решении вроде бы простой задачки
Есть база данных,  в которой 3 столбца с артикулами (фиксированное число столбцов), количество строк переменное (лист "данные")
И есть рабочий лист анализ, на основании которого нужно и проанализировать базу данных
Задача в столбце "ИТОГ" вывести например "да" если по какой-либо точке были реализованы основа и доп одновременно, в противном случае "нет".
И доп и основа могут быть в любом из 3 столбцов
Набор артикулов к анализу в листе "анализ" не постоянный, но всегда есть разбивка на основу и доп
Через если и впр можно сделать, но тогда при замене данных в листе анализ нужно каждый раз переделывать формулу.
Возможно ли как-то в формулу если вписать ссылку на  диапазон ячеек?
В примере отметила какой должен быть результат в первых двух строчках.
Буду очень благодарна всем откликнувшимся!
 
Айра, так?
=ЕСЛИ(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:D2;анализ!A$2:A$5))*СУММПРОИЗВ(СЧЁТЕСЛИ(B2:D2;анализ!B$2:B$5));"да";"нет")
 
Цитата
написал:
=ЕСЛИ(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:D2;анализ!A$2:A$5))*СУММПРОИЗВ(СЧЁТЕСЛИ(B2:D2;анализ!B$2:B$5));"да";"нет")
Да, применительно к тому сокращенному варианту, что я выложила, все сработало, спасибо!
Но  в исходнике, между 3 анализируемыми столбцами может быть n-ное количество описательных столбцов и тогда не срабатывает
Возможно ли поправить формулу с этим учетом?
Исходник поправила
Изменено: Айра - 22.04.2025 16:20:33
 
Цитата
в исходнике, между 3 анализируемыми столбцами может быть n-ное количество описательных столбцов
например:
СУММПРОИЗВ(СЧЁТЕСЛИ(анализ!A$2:A$5;B2:G2)*(ЛЕВБ(B$1:G$1;3)="арт"))*СУММПРОИЗВ(СЧЁТЕСЛИ(анализ!B$2:B$5;B2:G2)*(ЛЕВБ(B$1:G$1;3)="арт"))
 
в лоб
 
Цитата
написал:
например:СУММПРОИЗВ(СЧЁТЕСЛИ(анализ!A$2:A$5;B2:G2)*(ЛЕВБ(B$1:G$1;3)="арт"))*СУММПРОИЗВ(СЧЁТЕСЛИ(анализ!B$2:B$5;B2:G2)*(ЛЕВБ(B$1:G$1;3)="арт"))
я поправила прошлую формулу, так как все остальные описательные текстовые столбцы, не содержащие данных, которые есть в листе анализ, то у меня все посчиталось по диапазону вот такому
=ЕСЛИ(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!A$2:A$5))*СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!B$2:B$5));"да";"нет")
 
Здравствуйте.
Попробуйте такую формулу:
Код
=ЕСЛИ(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!$A$2:$B$10)*{1;10})>10;"Да";"Нет")
 
Гениальное решение gling, !
Чуть подправил:
=--(SUM(COUNTIF(B2:G2,анализ!$A$2:$B$10)*{1,3})>3)
и формат результирующего столбца
"Да";;"Нет"
Изменено: Metanor - 22.04.2025 23:10:59
 
Решение из сообщения #7, предполагаю не правильное. При отсутствии из "основа" но при наличии двух значений из "доп", результат будет >10. Правильнее будет такая формула
Код
=ЕСЛИ(И(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!$A$2:$A$10));СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!$B$2:$B$10)));"Да";"Нет")
 
gling, верно. Но решение смотрелось хорошо.

=SUM(COUNTIF(B2:G2,анализ!$A$2:$A$5))*SUM(COUNTIF(B2:G2,анализ!$B$2:$B$5))

и отформатировать столбец
ДА;;НЕТ
Изменено: Metanor - 23.04.2025 08:43:01
 
Цитата
gling:   СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!$A$2:$B$10)*{1;10})>10
а вот думал в этом направлении )
=ЕЧИСЛО(1/ПСТР(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!A$2:B$5)*{10;1});2;1))
но есть ограничения по количеству данных в "анализ"е
можно конечно расширить "способности", что-то вроде:
=ОСТАТ(10^LOG(СУММПРОИЗВ(СЧЁТЕСЛИ(B2:G2;анализ!A$2:B$5)*{100;1})-100);100)>0
но мне это решение не нравится )
как собственно и это (массивное):
=И(МУМНОЖ(ТРАНСП(СТРОКА(анализ!A$2:B$5))^0;СЧЁТЕСЛИ(B2:G2;анализ!A$2:B$5)))
Страницы: 1
Читают тему
Наверх