Excel求解器(添加约束列的方法)

Excel Solver (Way to add column of Constraints)

我有一个 excel sheet,我在其中的一列中输入了所有限制条件。所有的约束都是简单的比较...ex =A1>=B1 有72个约束。求解器中有没有办法绕过输入所有 72 个约束条件? 例如,我可以在单元格 A74 中写出一个公式说 =IF(COUNTIF(A2:A73,"TRUE")<>72,0,1) 然后作为规划求解中的约束说 "A74 = 1"?

我只是想找出一种方法来利用我的约束列,而不必将它们全部重新输入到规划求解中。谢谢!

专栏图片:

这可以用 VBA 来完成。这是一个例子:

SolverAdd CellRef:="$E", Relation:=1, FormulaText:="$E"

<= 是关系 1,>= 是关系 3。

因此,您可以为关系类型定义一个 int,为其他部分定义 2 个字符串,然后创建一个遍历单元格并将它们解析为 3 个部分的循环,使用 if-else 定义关系 int基于找到的符号。然后,如果您更改它们,您只需再次 运行 宏。您可能还想以以下方式启动您的宏:

SolverReset

这样它会清除现有的设置,否则你最终会得到很多重复项。