Страницы: 1
RSS
Оптимизирование расхода со склада, расход залить в таблицу
 
Добрый день, знатоки екселя!
Помогите со списанием перечня наименований со складов
Имеются участковые склады(склад 1, склад 2, склад 3 и т.д) откуда происходит расход, а так же центральные склады(центральный склад 1, центральный склад 2) с которых идет перемещение на участковые. С центральных складов расход не производится
Так же есть расход с датой списания, склад на каком было списание, наименования товара, кол-ва и ценой
Необходимо этот расход залить в таблицу но так, что бы если на участковом складе наименование какого либо товара закончилось, то списание шло с центрального. Так же стоит учитывать и цену. т.к. цена бывает разной
Голубым в таблице залиты значения которые должны получаться формулой
Заранее благодарен!
 
kms2020, в таблице "Факт расхода" за июль расход Апельчинов с 3 склада в количестве 5, однако в таблице "График" это значение стоит напротив склада 4.
 
Может я ошибаюсь, но в графике расход капусты за Июль со склада2 указан - 5, а по факту расхода - 20.  
 
Murderface_, да, там в расходе ошибочка склад 4
memo,  в том то и дело, что если расход со склада превышает остаток, то остаток списывается с центрального склада
 
Цитата
kms2020 написал:
то остаток списывается с центрального склада
остаток или то все ж превышение?
По вопросам из тем форума, личку не читаю.
 
БМВ,
если расход со склада 20, а остаток склада 5, то с самого склада списывается 5, а с центрального склада 15(подразумевается, что с центрального склада переместили на участковый и там уже та же капуста ушла в расход).
 
=IF(LEFT($A4;1)="С";SUMIFS($E$26:$E$54;$A$26:$A$54;E$2;$B$26:$B$54;$A4;$C$26:$C$54;$B4;$D$26:$D$54;$D4);
MAX(SUM(MMULT(SUMIFS($E$26:$E$54;$C$26:$C$54;$B4;$A$26:$A$54;$E$2:E$2;$B$26:$B$54;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$D$26:$D$54;$D4);TRANSPOSE(COLUMN($E$2:E$2))^0)-SUMIFS($C$4:$C$16;$A$4:$A$16;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$B$4:$B$16;$B4;$D$4:$D$16;$D4));0)-
MAX(SUM(MMULT(SUMIFS($E$26:$E$54;$C$26:$C$54;$B4;$A$26:$A$54;$D$2:D$2;$B$26:$B$54;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$D$26:$D$54;$D4);TRANSPOSE(COLUMN($E$2:E$2))^0)-SUMIFS($C$4:$C$16;$A$4:$A$16;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$B$4:$B$16;$B4;$D$4:$D$16;$D4));0))

или чуть проще
=IF(LEFT($A4;1)="С";SUMIFS($E$26:$E$54;$A$26:$A$54;E$2;$B$26:$B$54;$A4;$C$26:$C$54;$B4;$D$26:$D$54;$D4);
MAX(SUM(MMULT(SUMIFS($E$26:$E$54;$C$26:$C$54;$B4;$A$26:$A$54;$E$2:E$2;$B$26:$B$54;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$D$26:$D$54;$D4);TRANSPOSE(COLUMN($E$2:E$2))^0)-SUMIFS($C$4:$C$16;$A$4:$A$16;{"Склад 1";"Склад 2";"Склад 3";"Склад 4"};$B$4:$B$16;$B4;$D$4:$D$16;$D4));0)-
SUMIF($D$3:D$3;$E$3;$D4:D4))


Upd. Mmult  остался от варианта без учета стоимости на главним складе. Можно упростить еще заменив на простую сумму. Но уже или завтра или поздно вечером.
Изменено: БМВ - 21.08.2019 18:32:09
По вопросам из тем форума, личку не читаю.
 
БМВ, спс
почти так, но если взять капусту склада 2 - расход в июле 20. в таблице что бы напротив склада 2 было 5, а напротив капусты центрального склада 2 было 15. так же и в августе по той же позиции на складе 2 пустота, а расход с центрального склада 5
как то так.
И в формуле может можно без наименования складов и привязке к первой букве? т.к. складов около 50 с разными именами=(
Изменено: kms2020 - 22.08.2019 06:39:07
 
Перечень складов в справочник, для удобства в именованную переменную запихнул сейчас формулу, но так как склады наверно постоянные, то список сделали область проименовали и используйте. Сейчас это _WHs

А вот про капусту  не понял.
Было 10 , сперва взяли 5 потом 20. недостающие 15 с центрального, потом опять 5, они снова с центрального ведь на участковом уже нет ничего.
По вопросам из тем форума, личку не читаю.
 
Да, оно!
Я немного подкорректировал что бы расход со склада не показывался, если он превышает остаток, а показывал сразу расход с центрального склада.

Спасибо. Выручили
Страницы: 1
Наверх