Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Главное меню

Подбор слагаемых под нужную сумму

Автор Exc_fun, 24.10.2014, 10:37

« назад - далее »

MCH

Цитироватьчуть ниже программка Optmize
С помощью данной программы можно решить задачу раскроя, есть еще CuttingLine, но они используют как правило целочисленные данные (ваши данные легко адаптируются, достаточно все числа умножить на 10)

ЦитироватьМогу я увидеть вашу программу Раскрой?
На текущий момент программа не доделана и использовать ее не очень удобно, но алгоритмы по подбору суммы, которые в ней используются можно адаптировать под текущую задачу (сделаю позже)

Exc_fun

#16
MCH, в программе CuttingLine я пока не разобрался и не знаю как вписать туда в столбик все размеры. Если вы уже пользовались CuttingLine, то покажите, как в ней вы решили-бы мою задачу? А вот это http://infostart.zircool.ru/public/284488/, вы не знаете, что такое? Я не смог ее взять.
Хорошая статья по теме тут http://www.planetaexcel.ru/techniques/11/179/
Но мне это пока тяжело поддается.

MCH

Решение данной задачи в CuttingLine см. во вложении.
По подбору слагаемых под нужную сумму я же дал ссылку на свою реализация, там 4 варианта решения

Exc_fun

MCH, в Cutting Line я не понял как импортировать одним кликом список - колонку А (Экселя) с размерами? Тут что, по одному надо вводить данные? Если можно, покажите всю процедуру на видеоролике.
В сети существует куча он лайн калькуляторов, но нигде я не видел опции подбора слагаемых под нужную сумму. То есть ввел колонку с цифрами, повариться и дает результат. Вам попадались такие?

MCH

Пример решения задачи для целых чисел

Exc_fun

MCH, в вашей таблице "Задача раскроя2" конечно все четко получилось. Но мне нужен не готовый результат для одного раза, а шаблон заполнения строк в Cutting Line, чтобы я сам мог в будущем вписывать туда свои данные. Если здесь надо заносить каждую цифру по отдельности, то это страшное неудобство. Разве нельзя импортировать список всё сразу? Так или иначе, покажите мне процесс подбора в Раскрое на видеоролике. А то я не разобрался куда там вписывать данные. Чуть ранее я послал вам в ЛС письмо со второй таблицей. Похоже оно не дошло. Поэтому, привожу линк повторно http://rusfolder.com/42093505 Это моя папка с программами, точнее размеры файлов (17 Гб). Это должно уместится на 4 двд.

MCH

#21
Цитата: Exc_fun от 26.10.2014, 14:53Но мне нужен не готовый результат для одного раза
Так я приложил рабочий код, который распределяет любые числа под нужную сумму

Введите в D2 искомую сумму и нажмите кнопку

Exc_fun

MCH, и снова я ничего не понял. У вас голая таблица (с моими цифрами), в которой ничего не выделено. Нажатие на кнопку Целые числа (кстати, почему мои цифры с запятыми стали округленными?) выдает мне такое окно

То есть я не могу увидеть результаты. И что мне делать?

Serge 007

Цитата: Exc_fun от 26.10.2014, 15:31...что мне делать?
В окне предупреждения Excel, скрин которого Вы приложили, по русски написано что надо сделать. В чём ещё вопрос-то?
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

MCH

Ну так включите макросы: https://yadi.sk/i/QMtp8fSScJ8rV

PS: Ситуация напоминает разговор немого с глухим, я тут стараюсь коды различные пишу, ссылки на решения даю, а ТС даже не знает как запустить макрос
Дальнейшее развитие темы мне уже не интересно

RAN

Миш, ответ не верный. Нужно макросы подписать!  ;D

Exc_fun

#26
MCH, с ума сойти. Чтобы задействовать макрос, надо пройти весь этот лабиринт с Безопасностью и прочие ненужные преграды. Хорошо. Кажется, я начинаю разбираться в этой головоломке. К вашей таблице в Экселе Cutting Line имеет отношение или это чисто экселевская процедура? В будущем (когда соберуться файлы для записи очередного двд) мне достаточно ввести размеры папок в колонку А и указать желаемую сумму в D3 и всё? И почему нельзя убрать сразу в итоговой колонке и в желаемой сумме лишний ноль 44880 (разве это большая проблема сразу указывать 4488 и тоже самое со слагаемыми)?
Только что я вставил в колонку А другие цифры (слагаемые размеров для сборки нового двд) и при нажатии на кнопку Целые числа получил шиш.

Что и где надо поменять в формуле, чтобы подобные ошибки впредь я преодолевал? Создается впечатление, что данная таблица одноразовая и при подмене цифр выдает ошибку.
Да, еще я хотел попросить сдвинуть колонку А на В, чтобы в А я указывал (для удобства и быстрой ориентации) названия альбомов. Что-то надо поменять в формуле, или нет?

Exc_fun

Хотелось-бы все-же получить ответ на свои вопросы. А то мне дают готовую таблицу. Когда пытаюсь подставить другие цифры, Эксель выдает ошибку (скрин см. выше).

zs

Здравствуйте. Пример использования "Поиск решения" для подбора слагаемых, но необходим мозговой штурм для его доработки, потому что в случае "Поиска решения" он подбирает не целые, а потом доли, а доли по всем слагаемым и приходится вначале помогать опции "Поиску решения", расставляя, где очевидно 1. А вот, как заставить, "Поиск решения" расставлять автоматически сначала единички, а потом дробную часть числа-необходима консультация знатоков Excel.
С уважением, ZS5?

MCH

1. Ошибку выдает, потому что Вы используете нулевые значения слагаемых, обхода данного бага в коде нет.

2. Данный алгоритм по подбору чисел основан на динамическом программировании, в основе которого работа с целыми числами. Поэтому все Ваши числа я умножил на 10, для того чтобы можно было его использовать (об этом я писал в личке, если бы Вы были более внимательны, то не задавали бы эти вопросы).
Ссылку на другие алгоритмы по подбору слагаемых (перебором, случайной подборкой, динамическим программированием, макросом Слэна) я приводил дважды. Там есть примеры и в коде достаточно комментариев, чтобы в нем разобраться

3. CuttingLine не имеет никакого отношения к приложенному файлу xls с решением.

4. Если Вам нужно использовать вместо столбца A столбец B с числами, то поправить это не сложно, код макроса не закрыт, достаточно нажать Alt+F11 и сделать нужные поправки.
Если Вам нужно сделать все лично под Вас, то есть раздел:
https://forum.msexcel.ru/index.php/board,10.0.html

PS: Если не разобрались с CuttingLine, то есть еще небольшая программа lin_raskr: http://monobit.ru/software/lineynyy-raskroy/files
в ней есть возможность импортировать данные из текстового файла или xls файла, но она тоже работает с целыми числами.