等同于 SolverOK 函数,但本函数还显示“规划求解”对话框。
注意 默认情况下未启用规划求解加载项。 在可以使用此函数之前,必须已安装且已启用规划求解加载项。 有关如何执行该操作的信息,请参阅使用规划求解 VBA 函数。 安装规划求解加载项之后,必须创建对该规划求解加载项的引用。 在 Visual Basic 编辑器中,如果模块处于活动状态,请单击“工具”菜单上的“引用”,然后在“可用的引用”下选择“规划求解”。 如果“规划求解”没有显示在“可使用的引用”下面,请单击“浏览”,然后打开 \Program Files\Microsoft Office\Office14\Library\SOLVER 子文件夹中的 Solver.xlam。
SolverOkDialog ( SetCell、 MaxMinVal、 ValueOf、 ByChange、 Engine、 EngineDesc)
SetCell 是 Variant 类型的可选参数。 引用活动工作表中的一个单元格。 对应于“规划求解参数”对话框中的“设置目标单元格”框。 MaxMinVal 是 Variant 类型的可选参数。 对应于“规划求解参数”对话框中的“最大值”、“最小值”和“值”选项。
MaxMinVal | 指定 |
---|---|
1 | 最大 |
2 | 最小化 |
3 | 匹配特定值 |
ValueOf 是 Variant 类型的可选参数。 如果 MaxMinVal 为 3,则必须指定与目标单元格匹配的值。 ByChange 是 Variant 类型的可选参数。 要更改的单元格或单元格区域,以便在目标单元格中获取所需结果。 对应于“规划求解参数”对话框中的“通过更改单元格”框。 Engine 是 Variant 类型的可选参数。 应用于解决问题的求解方法:1 表示 Simplex LP 方法,2 表示 GRG 非线性方法,3 表示进化方法。 对应于“规划求解参数”对话框中的“选择求解方法”下拉列表。 ByChange 是 Variant 类型的可选参数。 另一种以字符串形式指定应用来求解问题的求解方法的方式:“单纯形 LP”、“GRG 非线性”或“演进式”。 对应于“规划求解参数”对话框中的“选择求解方法”下拉列表。
示例
本示例加载先前计算过的规划求解模型(该模型存储于 Sheet1 中),并重新设置所有规划求解选项,然后显示“规划求解参数”对话框。 此后就可以手动进行规划求解。
Worksheets("Sheet1").Activate
SolverLoad LoadArea:=Range("A33:A38")
SolverReset
SolverOKDialog SetCell:=Range("TotalProfit")
SolverSolve UserFinish:=False
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。