Страницы: 1
RSS
Расчет по соответствиям: СУММПРОИЗВ или заменитель
 
Доброго времени суток, уважаемые!

Такая проблемка: есть таблица с данными. Нужно, чтобы при выполнении нескольких условий формула возвращала расчет по соответствиям (надеюсь в примере более понятно :)) Если условий два - все работает хорошо. Такое уже проделывала. Но теперь я застряла и никак не могу додумать, что делать...
Прошу о помощи...

Заранее спасибо!

С уважением,
 
Здравствуйте. Может так надо
Код
=СУММПРОИЗВ((A2:K2=O2)*(A3:K3=O1)*(A9:K9=O3)*(A5:K5+A6:K6))
или так
Код
=СУММПРОИЗВ((A2:K2=O2)*(A3:K3=O1)*(A9:K9=O3)*(A5:K5*A6:K6))
 
Так? У Вас формула не былпа введена как формула массива...но я больше люблю не массивную...а вообще Эксу по барабану сколько условий
 
gling, Микки, спасибо! Все верно!
Но почему когда я делаю тоже самое с моим файлом - оригиналом, ничего не выходит. Возвращает просто 0 :cry:
 
Так пользуйтесь моим файлом))) там не 0..
 
Микки, это ж все-все менять... Много))) А отчего это зависит? Почему где-то работает, где-то нет?
 
Проверьте синтаксис формулы и диапазоны...чудес не бывает))) встаньте на формулу в рабочей строке и кликните она покажет Вам диапазоны ...или шлите мне на почту  
 
Читаем мануал: "Функция СУММПРОИЗВ трактует нечисловые элементы массивов как нулевые". У Вас элементы массивов в формуле - логические, поэтому для СУММПРОИЗВ они нулевые, итог - 0. Нужно либо преобразовывать в числовые (через -- или Ч), либо использовать запись в функции не через точку с запятой (;), а через умножить (*), взяв каждый массив в скобки.
Изменено: Влад - 14.07.2016 10:46:34
 
Код
=СУММПРОИЗВ(('рец 0%'!$J$4:$KR$4>=D1)*('рец 0%'!$J$4:$KR$4<=F1)*('рец 0%'!$J$233:$KR$233=A3)*('рец 0%'!$J$5:$KR$5=D2)*(('рец 0%'!$J$82:$KR$82)*('рец 0%'!$J$84:$KR$84)))


Синтаксис вроде верный, пишу через знак умножения. Не выходит...
 
А реальный файл показать не можете? Подозреваю, что F1 и D1 - это даты, нужно смотреть преобразование в этом месте формулы...
Изменено: Влад - 14.07.2016 11:34:57
 
Во вложении максимально похожий на оригинал файл. Да, Вы правы, Влад, это даты...
Пробовала их выразить через умножение на 1,и через --
Не получается...
Что интересно, если оставить лишь те условия, которые дают период временной (даты), а остальные условия убрать, все прекрасно считается...
Изменено: Honey - 14.07.2016 12:20:25
 
Honey, я же просил показать Вашу формулу, которая не работает, на реальном файле. В примере при умножении (без ;) проблемы нет.
Изменено: Влад - 14.07.2016 12:32:33
 
Влад, так у меня и в примере не работает... Стоило проставить даты - ничего не изменилось :(
 
Кто сказал?
 
Влад, вот бывает же такое))) Вот честно, не работает) А Ваш скачала - работает)
Я не могу в файле показать... Сами понимаете, неразглашение и т.д.
А если скриншотом? Формат дат здесь и там, где он их ищет - одинаковый.
 
Скриншот ни о чем не говорит, нужен файл. Если с датами без других условий считает, ищите условие, которое "обнуляет", добавляя их в формулу по одному. Больше ничем помочь не могу.
 
я бы так сделала.. если я правильно поняла вам нужна сумма произведений  по условиям? посмотрите файл вложения
 
Ляпуся, все верно, но я не смогу так работать))) Этот файл только пример. В оригинале слишком много данных, провернуть такое нереально и нерационально(((

Влад, нашла "плохое" условие. Ссылается на ячейки с формулами внутри. Это может повлиять?
 
Honey, просмотрите работу формулы через "Вычислить формулу" или выделив часть формулы, в строке формул, нажмите F9 и посмотрите какая часть формулы возвращает ошибку. Без Вашего файла сложно найти в нем ошибку. Части формул в формуле заключены в скобки.
Возможно в Вашем случае, произведение двух последних массивов нужно объединить (заключить) в одни скобки.
Изменено: gling - 14.07.2016 17:55:04
 
   еще 2 варианта
Изменено: Ляпуся - 14.07.2016 16:51:09
 
Ляпуся, спасибо большое)) 3 вариант удобнее всего. Но сейчас проблема в другом... все-равно спасибо!

gling, я уже вижу где ошибка. Во вложении пример, максимально приближенный к оригиналу. Ед.разница в том, что некоторые ячейки находяся на др листах. Но в примере все работает. А вот в оригинале нет. Забыла в файле прописать, что в оригинале ошибка из-за того, что ячейка А17 не равна Q4. То есть эксель выдает, что А17 это не 1300. Даже при проверке он не распознает ее содержание как 1300...
Я знаю, что очень сложно понять причину без файла. Тем более, что именно в нем ошибка, когда идентичные работают прекрасно. Буду смотреть, думать дальше. Если будут идеи, буду благодарна...
Всем спасибо большое!!! :)

С уважением,
Изменено: Honey - 15.07.2016 05:51:05
 
Попробуйте везде в формуле массивы и значения заключить в такую конструкцию
Код
--(СЖПРОБЕЛЫ(значение))
--(СЖПРОБЕЛЫ(массив))
Изменено: gling - 15.07.2016 07:35:04
 
Поняла наконец!))) 1300 из последнего примера - это целое число (Q4). А вот в А17 "1300" - это не число а комбинация цифр, т.е. это 1&3&0&0=1300. Поэтому они и не равны)))
Т.е. моя цель теперь преобразовать комбинацию цифр в единое число. Воть...)))
А здесь это элементарное умножение на 1.
Теперь, когда источник проблем обнаружен и, более того, проблема решена вот таким вот способом, даже не знаю плакать или смеяться... Настолько сложная проблема, настолько легкое решение...
Еще раз всем всем спасибо! Без Вас я бы не додумалась :D
Изменено: Honey - 15.07.2016 08:14:37
Страницы: 1
Наверх