Страницы: 1
RSS
Суммирование столбцом по условию
 
Здравствуйте!

Имеется таблица отчета (сохраненная из 1С). Расположение и количество кафе непостоянно, номенклатура разная (не только пироги). Внизу таблицы мне необходим некий "фильтр". Табличка, в которой будет написано, сколько пирогов заказано определенным кафе.

Необходимо, что бы в ячейке R31C3 отображалась сумма значений C3:C4 при условии, что R6C3 имеется текст "Доставка", а в C2 "Пирог*". То есть мне надо, чтоб формула в R6 находила определенное значение и суммировала C:C[1] (отталкиваясь от расположения, где находится найденное значение) с условием, что в C2 есть "Пирог*".

Возможно ли?
Изменено: neira - 25.03.2017 08:22:49
 
Конечно возможно.
У Экселя есть замечательная функция =СУММЕСЛИ() - она посчитает всё что надо.
Но для того чтобы она на вашем листе работала, надо лист подготовить.
Это можно сделать(подготовить) ручками - будет долго. А чтобы было быстро - макросом.
Хотя макросом можно посчитать нужное и не подготавливая лист.
-----
К стати, если в формуле вместо B30&"*" поставить "*"&$B30&"*" , то можно будет считать
не только пирог.... или рулет.... но и ...яблок...
Изменено: Valera2 - 25.03.2017 09:36:07
 
Valera2,

К сожалению этот вариант мне не подходит. Подготовка листа занимает время.
Цель формул именно в том, чтоб не тратить время на лишние манипуляции, просто сохранить отчет и вставить фильтр. У меня пока получилось только так, но справа пришлось сделать адаптацию на случай, если каких-то точек просто нет. Суть темы в том, чтоб избавиться от адаптации и сразу вписать формулы в необходимую таблицу. Избавиться от левой таблицы и использовать только правую, в которой, если каких-то кафе не будет, будет просто пустая строка.
Изменено: neira - 25.03.2017 10:04:06
 
Да-а-а-а. Всё оказалось не так просто. Объём подготовки оказался не таким уж маленьким.

Тут два варианта -

ПЕРВЫЙ - в 1с найти обработку, которая формирует нужную заявку, сделать с этой обработки
внешнюю обработку(что бы ни кто не цеплялся, что "ИЗменили мол конфигурацию БД -накажем").
И эту обработку подредактировать под себя.

ВТОРОЙ (если нельзя исправить в 1с) - к данному отчёту сварганить макрос,
который бы анализировал строку заголовков,кол-во записей в таблице и на основании этого строил вспомогательную и окончательную таблицы.
И расписывал бы эти таблицы нужными формулами.
 
По второму варианту сделал макрос - может быть поможет.
Изменено: Valera2 - 28.03.2017 00:41:54
 
Здравствуйте.
Может вариант в файле продвинет Ваши поиски формул.
Код
=ЕСЛИОШИБКА(СУММЕСЛИ($B$8:$B$47;P$50&"*";ИНДЕКС($J$8:$BH$47;;ПОИСКПОЗ($O51;$J$6:$BH$6;)))+СУММЕСЛИ($B$8:$B$47;P$50&"*";ИНДЕКС($J$8:$BH$47;;ПОИСКПОЗ($O51;$J$6:$BH$6;)+1))+СУММЕСЛИ($B$8:$B$47;P$50&"*";ИНДЕКС($J$8:$BH$47;;ПОИСКПОЗ($O51;$J$6:$BH$6;)+2));"")
Изменено: gling - 28.03.2017 02:07:43
Страницы: 1
Наверх