Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Добавляет ограничение к текущей проблеме. Эквивалентно щелчку "Решатель" в группе"Анализданных | ", а затем нажать кнопку Добавить в диалоговом окне Параметры решателя.
Примечание Надстройка "Решатель" не включена по умолчанию. Прежде чем использовать эту функцию, необходимо включить и установить надстройку "Решатель". Сведения о том, как это сделать, см. в разделе Использование функций Решателя VBA. После установки надстройки "Поиск решения" необходимо установить ссылку на надстройку "Поиск решения". В редакторе Visual Basic с активным модулем щелкните Ссылки в меню Сервис, а затем выберите пункт Поиск решения в разделе Доступные ссылки. Если пункт поиск решения не отображается в разделе Доступные ссылки, нажмите кнопку Обзор и откройте элемент Solver.xlam во вложенной папке \Program Files\Microsoft Office\Office14\Library\SOLVER.
SolverAdd( CellRef, Relation, FormulaText)
CellRefОбязательный вариант. Ссылка на ячейку или диапазон ячеек, образующих левую часть ограничения. ОтношениюОбязательное целое число. Арифметическое отношение между левой и правой сторонами ограничения. Если выбрано значение 4, 5 или 6, CellRef должно ссылаться на ячейки переменных решения, а FormulaText не следует указывать.
Relation | Арифметическое отношение |
---|---|
1 | <= |
2 | = |
3 | >= |
4 | Ячейки, на которые ссылается CellRef , должны иметь конечные значения, которые являются целыми числами. |
5 | Ячейки, на которые ссылается CellRef, должны иметь конечные значения 0 (ноль) или 1. |
6 | Ячейки, на которые ссылается CellRef , должны иметь конечные значения, которые являются разными и целыми числами. |
FormulaText Необязательный вариант Variant. Правая часть ограничения.
Замечания
После добавления ограничений можно управлять ими с помощью функций SolverChange и SolverDelete .
Пример
В этом примере используются функции Решателя для максимизации валовой прибыли при решении бизнес-задачи. Функция SolverAdd используется для добавления трех ограничений к текущей проблеме.
Worksheets("Sheet1").Activate
SolverReset
SolverOptions precision:=0.001
SolverOK setCell:=Range("TotalProfit"), _
maxMinVal:=1, _
byChange:=Range("C4:E6")
SolverAdd cellRef:=Range("F4:F6"), _
relation:=1, _
formulaText:=100
SolverAdd cellRef:=Range("C4:E6"), _
relation:=3, _
formulaText:=0
SolverAdd cellRef:=Range("C4:E6"), _
relation:=4
SolverSolve userFinish:=False
SolverSave saveArea:=Range("A33")
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.