Страницы: 1
RSS
Суммирование по признаку названия контрагента
 
Есть таблица в которое есть столбики

1) дата оплаты
2) контрагент (повторяющиеся наименования)
3) суммы (уникальные каждый раз)

Требуется каким-то образом сделать так, чтобы была сумма по каждому контрагенту, и если это возможно перечень номеров документов по ним.

прикрепляю примерный вариант итога, как бы это хотелось видеть минимальный вариант и идеальный

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

PS: конечно, можно фильровать по названию столбика и выделять ячейки и смотреть сумму, но менять местами ячейки - крайне не хочется.  
 
СУММЕСЛИМН
Выборочные вычисления по одному или нескольким критериям (planetaexcel.ru)
 
Цитата
написал:
СУММЕСЛИМН
Выборочные вычисления по одному или нескольким критериям (planetaexcel.ru)
спасибо! однако вторую часть запроса наверно эта функция не выполняет?  
 
Пример решения по второй части запроса можно посмотреть тут
Перенос данных из ячеек таблицы в которых одинаковое искомое значение (planetaexcel.ru)
 
Петр Коротич, а Вы не хотите пример приложить?
Элементарно решается и в PowerQuery (если у Вас excel 2013 или новее), и в PowerPivot (2010 и новее + должна быть pp).
Формулами тоже элементарно, если 365 excel.
Изменено: surkenny - 12.05.2023 17:59:36
 
Цитата
написал:
Петр Коротич, а Вы не хотите пример приложить?
Элементарно решается и в PowerQuery (если у Вас excel 2013 или новее), и в PowerPivot (2010 и новее + должна быть pp).
Формулами тоже элементарно, если 365 excel.
о каком примере идет речь? в файлах попытался отразить желаемый результат. PowerQuery пока для меня темный лес, к сожалению  
 
Цитата
Петр Коротич написал:
о каком примере идет речь?
о файле-примере в формате Excel.
Пришелец-прораб.
 
Цитата
Петр Коротич написал:
перечень номеров документов по ним
формула массива:
Код
=ОБЪЕДИНИТЬ(" , ";ИСТИНА;ЕСЛИ($C$1:$C$20=G1;B1:B20;""))
 
Цитата
написал:
Цитата
Петр Коротич написал:
о каком примере идет речь?
о файле-примере в формате Excel.
извиняюсь, действительно  
 
Цитата
написал:
=ОБЪЕДИНИТЬ(" , ";ИСТИНА;ЕСЛИ($C$1:$C$20=G1;B1:B20;""))
в вашем формате получается что идет перечисление всех номеров, а не по контрагенту конкретному + при протяжке не проходит  
 
Цитата
написал:
Цитата
Петр Коротич написал:
перечень номеров документов по ним
формула массива:
Код
    [URL=#]?[/URL]       1      =ОБЪЕДИНИТЬ(  " , "  ;ИСТИНА;ЕСЛИ($C$1:$C$20=G1;B1:B20;  ""  ))   
 
каюсь, все вышло
1. для списка контрагентов сделал на одельном листе удаление дубликатов, перенес их в оригинальную таблицу
2. по суммесли сделал суммы по уникальному контрагенту,
3. Далее по вашей формуле все решилось, спасибо! Сэкономили час в неделю точно  
 
PQ
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    g = Table.Group(Source, {"Контрагент"}, {{"сумма", each List.Sum([#"Сумма, р."]), type number}, {"документы", (x) => Text.Combine(x[#"№ документа"], ", ")}})
in
    g

и формула 365
Код
=LET(
    names, UNIQUE(Table1[Контрагент]),
    amounts, MAP(names, LAMBDA(a, SUM(FILTER(Table1[Сумма, р.], Table1[Контрагент] = a)))),
    txt, MAP(names, LAMBDA(a, ARRAYTOTEXT(FILTER(Table1[№ документа], Table1[Контрагент] = a)))),
    HSTACK(names, amounts, txt)
)

и переносить ничего никуда не надо, как и протягивать.
Пришелец-прораб.
 
Может так устроит
=ЕСЛИОШИБКА(ИНДЕКС($B$2:$B$40;НАИМЕНЬШИЙ(ЕСЛИ($F2=$C$2:$C$40;СТРОКА($C$2:$C$40)-СТРОКА($C$1);"");СТОЛБЕЦ()-СТОЛБЕЦ($G$2)));"")
 
Цитата
Петр Коротич написал:
идет перечисление всех номеров
в примере поправила:
Код
=ОБЪЕДИНИТЬ(" , ";ИСТИНА;ЕСЛИ($C$2:$C$40=G2;$B$2:$B$40;""))
Страницы: 1
Наверх