Поделиться через


SolverGet Function

Возвращает сведения о текущих параметрах решателя. Параметры указываются в диалоговых окнах Параметры решателя и Параметры решателя .

Примечание Надстройка "Решатель" не включена по умолчанию. Прежде чем использовать эту функцию, необходимо включить и установить надстройку Решателя. Сведения о том, как это сделать, см. в разделе Использование функций Решателя VBA. После установки надстройки "Поиск решения" необходимо установить ссылку на надстройку "Поиск решения". В редакторе Visual Basic с активным модулем щелкните Ссылки в меню Сервис, а затем выберите пункт Поиск решения в разделе Доступные ссылки. Если пункт поиск решения не отображается в разделе Доступные ссылки, нажмите кнопку Обзор и откройте элемент Solver.xlam во вложенной папке \Program Files\Microsoft Office\Office14\Library\SOLVER.

SolverGet(TypeNum, SheetName)

TypeNumОбязательное целое число. Число, указывающее тип нужной информации. В диалоговом окне Параметры решателя указаны следующие параметры.

TypeNum Возвращаемое значение
1 Ссылка в поле Задать целевую ячейку или значение ошибки #N/A, если средство решения не использовалось на активном листе.
2 Число, соответствующее параметру Равно : 1 представляет значение Max, 2 — min, 3 — значение Of.
3 Значение в поле Значение.
4 Ссылка (в виде нескольких ссылок, если это необходимо) в поле Изменение ячеек .
5 Количество ограничений.
6 Массив с левой стороны ограничений в текстовом виде.
7 Массив чисел, соответствующих отношениям между левой и правой сторонами ограничений: 1 представляет <=, 2 представляет =, 3 представляет >=, 4 представляет int и 5 представляет bin.
8 Массив с правой стороны ограничений в текстовой форме.
13 Значение true , если выбран метод Простое решение LP ; False, если выбран другой метод решения.
20 Значение true , если установлен флажок Сделать неотрицательных переменных без ограничений ; Значение False , если оно очищено.

В диалоговом окне Параметры решателя указаны следующие параметры.

TypeNum Возвращаемое значение
9 Параметр Максимальное время (в секундах) (вкладка Все методы).
10 Параметр Итераций (вкладка Все методы).
11 Параметр Точность ограничения (вкладка Все методы).
12 Параметр Оптимальность целочисленного числа (%) (вкладка Все методы).
14 Значение true , если установлен флажок Показывать результаты итерации ; Значение False , если оно очищено.
15 Значение true , если установлен флажок Использовать автоматическое масштабирование ; Значение False , если оно снято (вкладка Все методы).
16 Число, соответствующее типу оценок: 1 представляет Тангенс, а 2 — квадратику.
17 Число, соответствующее параметру Производные на нелинейной вкладке GRG: 1 представляет вперед, а 2 — центральную (нелинейную вкладку GRG).
18 Число, соответствующее типу поиска: 1 представляет Ньютон, а 2 — сопряжение.
19 Погрешность конвергенции (нелинейная вкладка GRG и вкладка "Эволюция").
21 Параметр Размер совокупности (нелинейная вкладка GRG и вкладка "Эволюция").
22 Параметр Случайное начальное значение (нелинейная вкладка GRG и вкладка "Эволюция").
23 Значение true , если установлен флажок Использовать несколько запусков ; Значение False , если оно снято (нелинейная вкладка GRG).
24 Значение true , если установлен флажок Требовать ограничения для переменных ; Значение false , если оно снято (нелинейная вкладка GRG и вкладка "Эволюция").
25 Параметр Частота мутаций (вкладка Эволюция).
26 Параметр Max Subproblems (Вкладка Все методы).
27 Параметр Максимально возможные решения (вкладка Все методы).
28 Параметр Игнорировать целочисленные ограничения (вкладка Все методы).
29 Параметр Максимальное время без улучшения (вкладка Эволюция).

Имя листа Необязательный вариант Variant. Имя листа, содержащего модель решателя, для которой требуется информация. Если параметр SheetName опущен, предполагается, что этот лист является активным листом.

Пример

В этом примере отображается сообщение, если вы не использовали Средство решения на Листе1.

Worksheets("Sheet1").Activate 
state = SolverGet(TypeNum:=1) 
If IsError(State) Then 
 MsgBox "You have not used Solver on the active sheet" 
End If

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.