Здравствуйте, подскажите пожалуйста как в Поиске решения вывести все найденные наборы оптимальных параметров. Например, задача максимизации По строке состояния видно что значение целевой функции несколько раз становится равным например 100 и потом поиск останавливается: ц.ф. 100, окончательные параметры - в изменяемых ячейках. Может что-то вроде лога есть где можно было бы посмотреть на каких параметрах получалась ц.ф. 100 по ходу оптимизации? Решать задачу через пошаговое исполнение - оптимизма не вызывает:) Как вариант - организовать пошаговый поиск решения через VBA с записью лога - тяжко, поскольку много нового познать придется, но все-же лучше пошагового клацанья мышкой. Может есть какие хитрости чтоб без программирования обойтись?
Изменено: Николай - 17.12.2015 18:21:48(новые мысли по поводу)
Здравствуйте, ищу дробь m/2^n входящую в диапазон [0.5430590272; 0.543059104) m, n - целые положительные, n минимальное поиск решения excel 2010 пишет что ответ готов при любых начальных условиях подскажите, можно ли где чего в солвере подкрутить чтоб заработало.
Просто другой логин для входа на форум я забуду - этот у меня на все случаи жизни. А галку "отображать имя" в профиле форума я сейчас поставил. Может заработает. Вопрос совместными усилиями решен. Для полного удовлетворения необходимо 1. В Excel: Файл - параметры - надстройки - перейти - пакет анализа VBA ставим галку 2. В ВБА редакторе Tools - References - Solver - ставим галку и поднимаем в приоритете как можно выше 3. код (True - подавляет вывод окна с океем по окончании расчета)
Да, понятно, спасибо еще раз. Подключил Файл - параметры - надстройки - перейти - пакет анализа VBA и макрорекордер на поиске решения заработал - правда пока ошибок кажет, но это уже лучше чем пустой Sub ... End Sub. Хоть что-то заработало! уже прогресс
Здравствуйте, Без макроса процесс выглядит так: 1 Настраиваю поиск решения (ограничения, изменяемые, целевую) на нескольких листах. На каждом листе настройки разные. Они сохраняются если вызвать окно поиска решения, выставить все, а потом закрыть не запуская. 2. Запускаю поиск решения на листе 1, курю 2-3 минуты, запускаю поиск решения на листе 2, курю.... на листе 10 3. Прохожусь по всем листам - сохраняю результаты поиска решения. Прикидываю как изменить настройки и снова п. 1
Очень хочется автоматизировать п. 2. Напрямую макрорекордер не записал ничего. Посоветуйте как подступиться. Важно, чтобы настройки поиск решения брал с листа.
Excel 2010 - принципиально, поскольку в 2003 генетического алгоритма нет
менять .TextFileDecimalSeparator = "." на запятую - это на весь диапазон работает а не постолбцово не решает проблему - там один столбец с разделителем точкой а другой с запятой. по идее хотелось бы чтоб с этого же макроса и диаграмма строилась замена запятой на точку и обратно
успеха не имеет - также по левому краю выравнивание остается наверное все-таки придется доп столбцы с делением на 1 организовывать и от них диаграмму строить
Здравствуйте! есть внешние файлы csv с десятичным разделителем точкой
после импорта с .TextFileDecimalSeparator = "." (в excel 2003) получаются столбцы с запятыми, которые выравниваются слева и не воспринимаются как числа. формат диапазона ячеек - числовой - не работает двойной щелчок на ячейке - решает проблему - содержимое ячейки становится числом включение в формулу - тоже работает а диаграмма от исходных столбцов не строится
подскажите, пожалуйста, как на VBA организовать "осмысление" исходных столбцов до чисел. наверно делать дублирующие столбцы с формулами, делящими исходные на 1 - не самое лаконичное решение. если решение уже есть на форуме - ткните пожалуйста носом
Спасибо, ато все мозги сломал пытаясь задержку через OnTime сделать Цикл это хороший выход Но и моя придумка с размещением доп информации в уголке экрана непосредственно в просмотре - тоже неплохо
стандартный превью интуитивно понятен тем, кто на компьютере умеет, хотя бы слегка. Тут задача максимально упростить - чтоб человек отошел от станка, подошел к компьютеру, нажал на 2-3 большие кнопки с понятными ему словами и взял листы из принтера. Ато сейчас маршруты руками (ручкой на бумажном бланке) пишут.
извините за мелкий текст - из ворда вставил и не посмотрел. поправил
Здравствуйте! С первого листа вызываем просмотр и печать листа печ
Код
Sub pros()
MsgBox ("просмотр закрывать штатной кнопкой, что сверху посередке")
Sheets("печ").Select
ActiveWindow.SelectedSheets.PrintPreview
Sheets("первый").Select
End Sub
Sub prin()
Sheets("печ").Select
ActiveWindow.SelectedSheets.PrintOut
Sheets("первый").Select
End Sub
Хочу получше, но не знаю как
Или так 1. Вместо MsgBox ("закрывать ...." ) повесить сообщение на 2 сек без необходимость кликать в ОК на месбоксе и желательно чтобы по щелчку в любом месте за время от 0 до 2с это сообщение тоже убиралось Или так 2. Разместить собственные (не штатные) кнопки закрытия и печати (в немодальном режиме) непосредственно в PrintPreview. Не то, что я не могу выбрать между 1 и 2 ) – просто ни то ни то пока не умею
Прицепление к сообщению #3 немного не то - числа в теле таблицы - это порядковый номер операции. Узел2 сначала ровнять потом сверлить и т.д Выпадающий список неудобно - уже есть конструкция - там гоняние невинной буквы автоматизировано - клик по любой ячейке столбца выбор ставит в ячейке галку со снятием галки предыдущего выбора. Как сделано пока не разбирался - только видно, что галка это буква а. А вот дублирование шапки снизу и правда как то плохо. И еще раз спасибо за идею - повесить строку равную той, где стоит указатель а, над шапкой и от нее уже городить ГПР.
Спасибо за подсказку про ДВССЫЛ кривенько, но получилось ГПР($J5;ДВССЫЛ(АДРЕС(ПОИСКПОЗ("a";A:A);1;4)):$H$7;8-ПОИСКПОЗ("a";A:A);ЛОЖЬ) а шапку вниз сдублировал, поскольку у ГПРа вывод только ниже поиска а СМЕЩ как 3й аргумент ГПРа - не могу сообразить как вставить. Видал конечно модифицированную функцию ВПР без ограничения на вывод правее поиска - может попробовать такой же рукописный ГПР по аналогии сконструировать... С ИНДЕКСом честно говоря, не понял, ИНДЕКС($A$1:$A$7;ПОИСКПОЗ("a";$A$1:$A$7)) возвращает а
Здравствуйте, Есть двумерная таблица, где по вертикали - наименования узлов, по горизонтали - наименования технологических операций, а внутри - порядковый номер операции для определенного узла. по вертикали определяем узел напротив которого стоит буква а (строку по которой выводим информацию) АДРЕС(ПОИСКПОЗ("a";A:A);1;4) по горизонтали ГПРом выводим последовательность операций ГПР(J5;A3:H7;5;ЛОЖЬ) Осталось в ГПР вместо жестко заданного начала диапазона A3 вписать возвращаемое АДРЕСом ГПР($J5;АДРЕС(ПОИСКПОЗ("a";A:A);1;4):H7;5;ЛОЖЬ) - не сработало Посоветуйте пожалуйста как