返回有关规划求解的当前设置信息。 这些设置是在“规划求解参数”和“规划求解选项”对话框中指定的。
注意 默认情况下未启用规划求解加载项。 在可以使用此函数之前,必须已安装且已启用规划求解加载项。 有关如何执行该操作的信息,请参阅使用规划求解 VBA 函数。 安装规划求解加载项之后,必须创建对该规划求解加载项的引用。 在 Visual Basic 编辑器中,如果模块处于活动状态,请单击“工具”菜单上的“引用”,然后在“可用的引用”下选择“规划求解”。 如果“规划求解”没有显示在“可使用的引用”下面,请单击“浏览”,然后打开 \Program Files\Microsoft Office\Office14\Library\SOLVER 子文件夹中的 Solver.xlam。
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 | 由约束右边构成的文本形式的数组。 |
13 | 如果选择简单 LP 解决方法则为True;如果选择另一种解决方法则为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;如果将其清除 (GRG 非线性选项卡) ,则为 False。 |
24 | 如果选中了“需要变量界限”,则为True;如果清除了该复选框则为False(“GRG 非线性”选项卡与“进化”选项卡)。 |
25 | “突变率”选项(“进化”选项卡)。 |
26 | “最大子问题数”选项(“所有方法”选项卡) |
27 | “最大可行解数”选项(“所有方法”选项卡) |
28 | “忽略整数约束”选项(“所有方法”选项卡)。 |
29 | “没有改进的最长时间”选项(“进化”选项卡)。 |
SheetName为可选变量。 包含想要信息的规划求解模型的工作表名称。 如果省略 SheetName ,则假定此工作表为活动工作表。
示例
如果未在 Sheet1 中使用规划求解,本示例将显示一条消息。
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 支持和反馈,获取有关如何接收支持和提供反馈的指南。