|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.03.2011, 23:01 | #1 |
Новичок
Джуниор
Регистрация: 15.03.2011
Сообщений: 2
|
Проблема с кодом Solver, знающие люди, отзовитесь
Всем привет. Знающие люди, помогите, больше не знаю куда обратиться. В экселе VBA ориентируюсь очень плохо.
Собственно проблема в том, что код не отмечает галочками в "поиск решений", не распознает ни линейную модель(AssumeLinear) ни не отрицательные значения(AssumeNonNeg). Почему не понимаю НА эти строчки в коде не реагирует вообще никак: AssumeLinear = True,StepThru = False, Scaling = True,AssumeNonNeg = True; хотя если отметить эти пункты в ручную в параметрах "поиск решений" то работает. Помогите, буду очень благодарен Sub ZLP() ' ' ZLP Макрос ' Dim wbSolv As Workbook 'подключаем "Поиск решений" On Error Resume Next Set wbSolv = Workbooks("Solver.xla") On Error GoTo EH If wbSolv Is Nothing Then Set wbSolv = Workbooks.Open(ThisWorkbook.Path & "\Solver.xla") End If 'Инициализируем Application.Run "Solver.xla!Auto_Open" Application.Run "Solver.xla!SolverReset" 'Данные для расчета Application.Run "Solver.xla!SolverOptions", MaxTime = 100, Iterations = 10000, Precision = 0.000001, AssumeLinear = True, StepThru = False, Оценки = 1, Разности = 1, SearchOption = 1, IntTolerance = 5, Scaling = True, Convergence = 0.0001, AssumeNonNeg = True Application.Run "Solver.xla!SolverOk", "$B$32", 1, 0, "$B$30:$J$30" Application.Run "Solver.xla!SolverAdd", "$K$24", 1, "$M$24" Application.Run "Solver.xla!SolverAdd", "$K$25", 3, "$M$25" Application.Run "Solver.xla!SolverAdd", "$K$26:$K$27", 2, "$M$26:$M$27" Application.Run "Solver.xla!SolverSolve" Exit Sub EH: MsgBox Err.Source & "~" & Err.Description End Sub Последний раз редактировалось mexanik996; 15.03.2011 в 23:05. |
15.03.2011, 23:33 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
ищите тут (все довольно очевидно):
SolverOptions MaxTime:=100, Iterations:=100, Precision:=0.000001, AssumeLinear:=False, StepThru:=False, Оценки:=2, Разности:=1, SearchOption:=1, IntTolerance:=5, Scaling:=False, Convergence:=0.0001, AssumeNonNeg:=False
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
Последний раз редактировалось IgorGO; 15.03.2011 в 23:35. |
16.03.2011, 09:58 | #3 |
Новичок
Джуниор
Регистрация: 15.03.2011
Сообщений: 2
|
Спаибо, уже нашел
Код не работал по причине того, что метод Run не работает с именованными аргументами. Нужно было Application.Run "Solver.xla!SolverOptions", 100, 10000, 0.000001 'и т.д. Аргументы должны находиться на своих позициях. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Есть знающие люди??? | serg268 | C++ Builder | 1 | 05.03.2011 15:03 |
что такое стек?Отзовитесь,люди | Еленка | Помощь студентам | 5 | 08.06.2008 13:39 |
люди уважающие паскаль отзовитесь! | Минька | Помощь студентам | 1 | 12.12.2006 19:34 |