Делаю наличия/потребления материала (вызывается по двойному клику на номере материала на листе stock). Потребление указывается на листе demand, там же и расчитывается на сколько хватит текущего кол-ва материала (вторая строка). Потом номер материала подставляется в сводную (по demand) на листе chart, обновляется график и выводится в форму.
Возникла трудность с расчетом количества дней оставшихся до даты исчерпания запаса материала на складе (F2 на листе demand). 1. Сначала данные сортируются по дате (G), потом фильтруются по материалу (A). 2. Вычисляется потребление в день (H) для каждой заявки. 3. Вычисляется сколько осталось потребить для уже начавшихся заявок (I). 4. Вычисляется сколько израсходуется материала исходя из всех случаев потребления (J) и максимум подставляется в J2. 5. Вычисляется сколько дней осталось до истечения запаса материала на складе (K) и минимальное положительное подставляется в K2. 6. Находится дата заявки на которой кончается запас материала из 5 пункта и из нее вычитается кол-во дней через которые закончится материал и получаем точную дату когда закончится материал.
Вот на 5ом пункте возникла проблема, ни сабтотал максимум по положительным не делает, ни
Код
{=MIN(IF(K3:K50>0,K3:K50))}
со сортироваными данными не работает. Нашел несколько вариантров с массивами на vba, но не смог их применить для сортированого списка.
Подскажите, пожалуйста, как лучше реализовать 5ый и возможно 6ой пункты. И в целом возможно есть варианты как лучше и проще прийти к дате когда кончится запас?
Доброго времени,
Делаю наличия/потребления материала (вызывается по двойному клику на номере материала на листе stock). Потребление указывается на листе demand, там же и расчитывается на сколько хватит текущего кол-ва материала (вторая строка). Потом номер материала подставляется в сводную (по demand) на листе chart, обновляется график и выводится в форму.
Возникла трудность с расчетом количества дней оставшихся до даты исчерпания запаса материала на складе (F2 на листе demand). 1. Сначала данные сортируются по дате (G), потом фильтруются по материалу (A). 2. Вычисляется потребление в день (H) для каждой заявки. 3. Вычисляется сколько осталось потребить для уже начавшихся заявок (I). 4. Вычисляется сколько израсходуется материала исходя из всех случаев потребления (J) и максимум подставляется в J2. 5. Вычисляется сколько дней осталось до истечения запаса материала на складе (K) и минимальное положительное подставляется в K2. 6. Находится дата заявки на которой кончается запас материала из 5 пункта и из нее вычитается кол-во дней через которые закончится материал и получаем точную дату когда закончится материал.
Вот на 5ом пункте возникла проблема, ни сабтотал максимум по положительным не делает, ни
Код
{=MIN(IF(K3:K50>0,K3:K50))}
со сортироваными данными не работает. Нашел несколько вариантров с массивами на vba, но не смог их применить для сортированого списка.
Подскажите, пожалуйста, как лучше реализовать 5ый и возможно 6ой пункты. И в целом возможно есть варианты как лучше и проще прийти к дате когда кончится запас?user0
Можно формулой (если она не на две строки ), можно и на vba, как проще.
Формулами потому что так проще и не уверен, что понадобится через некотрое время, может еще какие линии дорисовывать придется.. Пока планирую оставить столбцы с А до N, а O-Q удалить после того как найдутся ответы 5ый и 6ой пункты.
Можно формулой (если она не на две строки ), можно и на vba, как проще.
Формулами потому что так проще и не уверен, что понадобится через некотрое время, может еще какие линии дорисовывать придется.. Пока планирую оставить столбцы с А до N, а O-Q удалить после того как найдутся ответы 5ый и 6ой пункты.user0
Вообще-то у Вас вполне нормально работает Ваша формула (посмотрите в файле ячейку К2). Только ее вводить нужно одновременным нажатием Контрл Шифт Ентер Формула для даты (учитывает вероятность того, что срок с минимальными днями может быть несколько и у каждой из них могут быть свои даты заявки Тоже формула массива (в файле желтая)
Код
=МИН(ЕСЛИ(K3:K50>0;G3:G50))-K2
Добавлено Подождите, Вы под сортировкой что, подразумеваете фильтрацию?
Вообще-то у Вас вполне нормально работает Ваша формула (посмотрите в файле ячейку К2). Только ее вводить нужно одновременным нажатием Контрл Шифт Ентер Формула для даты (учитывает вероятность того, что срок с минимальными днями может быть несколько и у каждой из них могут быть свои даты заявки Тоже формула массива (в файле желтая)
Код
=МИН(ЕСЛИ(K3:K50>0;G3:G50))-K2
Добавлено Подождите, Вы под сортировкой что, подразумеваете фильтрацию?_Boroda_