Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Секундомер параллельно работающему коду, Секундомер параллельно работающему коду
 
Добрый день, друзья! Пытаюсь к основному коду дополнить создание секундомера, который выведет окно где будет идти отчет по нарастающей с 00:00:00 и далее (секундомер) и параллельно идти сам код. Пытался через userform сделать, но если запускать его модально то просто работает секундомер, который блокирует работу дальнейшего кода, если запускать форму немодально, то просто появляется окно на столе, но секундомер не работает.
Помогите пж!
Распределить с условиями в VBA
 

Добрый день, друзья. Прошу помочь с написанием распределителя товаров по фургонам при помощи кода VBA. Казалось бы задача простая, но имеются условия, которые ее значительно осложняют.

Пример задачи следующий: на складе имеются 3 вида товаров: картошка, морковь и огурцы с весами 50 кг., 100 кг. и 150 кг. Их необходимо разгрузить по 3-ем фурам с желаемой загруженностью в 100 кг., 200 кг. и 300 кг.  Причем картошку нельзя грузить на 3юю фуру. Казалось можно было просто товары просто равномерно распределить по 3-ем фурам (1/6 всех товаров в 1ую фуру, 2/6 всех товаров во 2ую фуру и 3/6 всех товаров в 3юю фуру) однако имеется ограничение по картошке, из-за чего в 3юю фуру картошка не будет грузиться, из-за ее загруженность будет на 25 кг. (3/6 картошки) меньше предполагаемого уровня, а в 1ые 2 фуры будет загружено больше на 8,3 кг. и 16,67 кг. картошки соответственно. Однако, теперь необходимо, чтобы эти недостающие 25 кг. в 3ей фуре были компенсированы за счет других товаров. Цель - достигнуть максимально равномерного уровня загруженности во всех 3-ех фурах (загруженность = вес всех товаров в фуре / желаемый уровень загрузки). Кстати, почему пишу желаемый уровень загрузки - потому что в фуры можно грузить сколько угодно товаров если в другие фуры больше нельзя (например если бы в нашей задачи стояло условие - что во 2ую и 3юю фуру можно грузить только картошку, то все огурцы и морковь пришлось бы грузить в 1ую фуру, что явно выше 100 кг.).

Если буду молчать в личке, то напишите пж сюда тоже, на случай если не придет уведомление из лички

Спасибо!

Распределитель товара по фурам с условиями
 
Добрый день, друзья. Прошу помочь с написанием распределителя товаров по фургонам при помощи кода VBA. Казалось бы задача простая, но имеются условия, которые ее значительно осложняют.
Пример задачи следующий: на складе имеются 3 вида товаров: картошка, морковь и огурцы с весами 50 кг., 100 кг. и 150 кг. Их необходимо разгрузить по 3-ем фурам с желаемой загруженностью в 100 кг., 200 кг. и 300 кг.  Причем картошку нельзя грузить на 3юю фуру. Казалось можно было просто товары просто равномерно распределить по 3-ем фурам (1/6 всех товаров в 1ую фуру, 2/6 всех товаров во 2ую фуру и 3/6 всех товаров в 3юю фуру) однако имеется ограничение по картошке, из-за чего в 3юю фуру картошка не будет грузиться, из-за ее загруженность будет на 25 кг. (3/6 картошки) меньше предполагаемого уровня, а в 1ые 2 фуры будет загружено больше на 8,3 кг. и 16,67 кг. картошки соответственно. Однако, теперь необходимо, чтобы эти недостающие 25 кг. в 3ей фуре были компенсированы за счет других товаров. Цель - достигнуть максимально равномерного уровня загруженности во всех 3-ех фурах (загруженность = вес всех товаров в фуре / желаемый уровень загрузки). Кстати, почему пишу желаемый уровень загрузки - потому что в фуры можно грузить сколько угодно товаров если в другие фуры больше нельзя (например если бы в нашей задачи стояло условие - что во 2ую и 3юю фуру можно грузить только картошку, то все огурцы и морковь пришлось бы грузить в 1ую фуру, что явно выше 100 кг.).
Сразу замечу, что количество товаров, их веса, количество фур и их желаемые уровни загрузки могут постоянно меняться, ровно как и ограничения по загрузке. Попытался сделать через solver, вкладываю документ. Он почему-то в 1 момент в целом начал путаться в арифметике, ну и ограничение в 200 переменных сильно мешает.
Друзья, посмотрите пожалуйста, может чем помочь сможете
Спасибо!
Страницы: 1
Loading...