Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Использование solver32.dll в VB6 / 8 сообщений из 8, страница 1 из 1
16.03.2010, 16:13
    #36524005
Anarhist
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
Здравствуйте уважаемые специалисты, появилась необходимость интегрировать "поиск решения" из EXCEL в VB6. Реально ли это сделать? зарание спасибо.
...
Рейтинг: 0 / 0
16.03.2010, 16:16
    #36524018
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
AnarhistЗдравствуйте уважаемые специалисты, появилась необходимость интегрировать "поиск решения" из EXCEL в VB6. Реально ли это сделать? зарание спасибо.

А воспользоваться Excel-ем как СОМ-объектом не подойдет?
...
Рейтинг: 0 / 0
16.03.2010, 20:25
    #36524822
Anarhist
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
Использование EXCEL как объект получается, а вот как туда именно поиск решения подключить никак не могу сообразить. Если не трудно подскажите в какую сторону двигаться.
В качестве сетки используется ms FlexGrid
...
Рейтинг: 0 / 0
16.03.2010, 20:35
    #36524837
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
Запись макроса дает примерно такие команды:
Код: plaintext
1.
    SolverOk SetCell:="$A$1", MaxMinVal:= 3 , ValueOf:="3", ByChange:="$B$4"
    SolverSolve

Но как их выполнить через COM - не знаю, ObjectBrowser не находит их как методы чего-то...
Может быть создать шаблонный файл, в нем свой метод для солвера и вызывать этот метод через СОМ...
...
Рейтинг: 0 / 0
16.03.2010, 20:53
    #36524859
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
AnarhistЗдравствуйте уважаемые специалисты, появилась необходимость интегрировать "поиск решения" из EXCEL в VB6. Реально ли это сделать? зарание спасибо.Нафига???
Самому сделать намного проще будет.

Там же все элементарно до ужаса: У тебя есть формула: y=f(x)
Задача найти такой x чтобы f(x) стало равной заданному y
Все что solver делает это берет x=0 , считает f(x) сравнивает результат с заданным, не совпадает? Увеличить x и посчитать еще раз. Значение f(x) приблизилось к искомому? Да - увеличить x еще раз, удалилось - уменьшить x . ... и повторять до посинения.
...
Рейтинг: 0 / 0
16.03.2010, 20:55
    #36524860
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
White Owl,

А если функция нелинейная?
Думаю, алгоритм там посложнее.

Впрочем, все зависит от задачи автора.
...
Рейтинг: 0 / 0
16.03.2010, 21:14
    #36524885
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
Shocker.ProWhite Owl,

А если функция нелинейная?
Думаю, алгоритм там посложнее.

Впрочем, все зависит от задачи автора.А если функция нелинейная, то solver обломается и завершится с воплем что он не смог найти результат за -цать тысяч итераций.
И да, если есть некоторое представление о том какого типа функцию надо будет находить, то и алгоритм нахождения будет намного более качественной версией брутфорса или даже вообще не брутфорс.
А может даже можно будет сделать и функцию от двух-трех-...-многих переменных.
...
Рейтинг: 0 / 0
16.03.2010, 21:15
    #36524886
Anarhist
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование solver32.dll в VB6
Я тоже макрос писал, однако он не работает в vb6. Видимо сначала библиореку надо правельно подключить, кроме того в процессе ещё участвует solver.xlam который как я понимаю выступает посредником...
Сам solver ооочень мощный алгоритм, а главное достоинство возможность выставлять ограничения
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Использование solver32.dll в VB6 / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]