Excel VBA教程:SolverGet函数

返回规划求解当前设置的信息。这些设置是在“规划求解参数”和“规划求解选项”对话框中指定的。

使用本函数之前,必须建立对规划求解加载宏的引用。当 Visual Basic 模块处于活动状态时,单击“工具”菜单上的“引用”,再选中“可使用的引用”列表框中的“Solver.xla”复选框。如果“Solver.xla”未出现在“可使用的引用”列表框中,请单击“浏览”按钮并打开“\Office\Library\Solver”子文件夹中的“Solver.xla”。

SolverGet(TypeNum, SheetName)

TypeNum   Integer 类型,必需。指定所要获取的信息类型的数字。下列设置是在“规划求解参数”对话框中指定的。

TypeNum 返回
1 “设置目标单元格”编辑框中的单元格引用,或者当规划求解未在活动工作表上使用时,返回 #N/A 错误值。
2 对应于“等于”选项的数字:1 代表“最大值”,2 代表“最小值”,3 代表“值为”。
3 “值为”编辑框中的值。
4 “可变单元格”编辑框中的单元格引用(必要时为多个引用)。
5 约束条件的个数。
6 由约束条件左边构成的文本形式的数组。
7 对应于约束条件左边和右边之间关系的数字数组:1 表示 <= ,2 表示 =,3 表示 >= ,4 表示 int,5 表示 bin。
8 由约束条件右边构成的文本形式的数组。

下列设置是在“规划求解选项”对话框中指定的。

TypeNum 返回
9 最长运算时间。
10 最大迭代次数。
11 精度。
12 整数允许误差值。
13 如果选中了“采用线性模型”复选框,则返回 True;如果清除了该复选框,则返回 False。
14 如果选中了“显示迭代结果”复选框,则返回 True;如果清除了该复选框,则返回 False。
15 如果选中了“自动按比例缩放”复选框,则返回 True;如果清除了该复选框,则返回 False。
16 对应于估计值类型的数字:1 表示正切函数,2 表示二次方程。
17 对应于导数类型的数字:1 表示向前差分,2 表示中心差分。
18 对应于搜索类型的数字:1 表示牛顿法,2 表示共轭法。
19 收敛值。
20 如果选中了“假定非负”复选框,则返回 True。

SheetName   Variant 类型,可选。包含规划求解模型(需要与之相关的信息)的工作表名称。如果省略 SheetName,则假定该工作表为活动工作表。

Excel VBA教程:SolverGet函数·示例

如果未在 Sheet1 中使用规划求解,本示例将显示一则消息。


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

上页:Excel VBA教程:SolverFinishDialog函数 下页:Excel VBA教程:SolverLoad函数

Excel VBA教程:SolverGet函数

Excel VBA教程:SolverLoad函数 Excel VBA教程:SolverOk函数
Excel VBA教程:SolverOkDialog函数 Excel VBA教程:SolverOptions函数
Excel VBA教程:SolverReset函数 Excel VBA教程:SolverSave函数
Excel VBA教程:SolverSolve函数 Excel VBA教程:SQLBind函数
Excel VBA教程:SQLClose函数 Excel VBA教程:SQLError函数
Excel VBA教程:SQLExecQuery函数 Excel VBA教程:SQLGetSchema函数
Excel VBA教程:SQLOpen函数 Excel VBA教程:SQLRequest函数
Excel VBA教程:SQLRetrieve函数 Excel VBA教程:SQLRetrieveToFile函数
Excel VBA教程:隐藏的语言元素 Excel VBA教程:向文档中添加控件
Excel VBA教程:向用户窗体中添加控件 Excel VBA教程:应用程序对象事件
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号