能否用Excel Solver解决该数据优化问题?求无代码替代方案
需求背景与问题
- 初始Excel表格:包含待调整的单元格区域
D2:E27,以及需要校验的区域K2:L3 - 已验证的目标效果:通过Python计算得到了符合要求的表格,最终需让
K2:L3区域内所有值均大于60% - 辅助查看:表格已同步到在线表格工具,便于查看数据
核心需求:需要一个无代码的Excel解决方案(支持Excel 365、2021等任意版本),让不懂Python的同事能够完成D2:E27区域的值调整,确保K2:L3区域所有值均大于60%。请问是否可行?若可行,该如何操作?
可行解决方案:使用Excel规划求解
完全可行,利用Excel自带的「规划求解」工具就能实现无代码操作,具体步骤如下:
启用规划求解加载项
- 打开Excel,点击「文件」→「选项」→「加载项」
- 在「管理」下拉框选择「Excel加载项」,点击「转到」
- 勾选「规划求解加载项」,点击「确定」。之后在「数据」选项卡就能看到「规划求解」按钮。
配置规划求解参数
- 点击「数据」选项卡中的「规划求解」按钮
- 目标设置:由于只需满足约束条件,无需指定具体目标值,直接在「设置目标」框随便选一个单元格(比如A1),「值为」填任意数字(比如0)即可
- 可变单元格:选择
$D$2:$E$27(直接用鼠标选中该区域即可) - 添加约束条件:
- 点击「添加」按钮,在弹出的窗口中:
- 单元格引用:选择
$K$2:$L$3 - 运算符:选择「>=」
- 约束值:输入
0.6(如果K2:L3是百分比格式,输入60%也可以)
- 单元格引用:选择
- 若
D2:E27的值有业务限制(比如不能为负数、必须是整数等),可继续添加对应约束,例如$D$2:$E$27 >= 0
- 点击「添加」按钮,在弹出的窗口中:
- 点击「求解」按钮
确认并保存结果
- 求解完成后,会弹出对话框提示找到可行解,选择「保留规划求解的解」,点击「确定」
- 此时
D2:E27的数值会自动调整,K2:L3区域的所有值都会满足大于60%的要求
注意事项
- 规划求解会给出任意一个符合约束的可行解,如果需要更贴合业务的结果,可以额外添加目标(比如最大化/最小化某个关键指标)
- Excel 365、2021等主流版本均原生支持规划求解功能,无需额外安装插件
内容的提问来源于stack exchange,提问作者Marci
相关产品推荐
相关产品推荐

