我需要通过更改一个会影响所有单元格的变量(工作表中的单独单元格)来求解 Excel 中列的每个单元格的方程。我怎样才能在Excel中做到这一点?
求解器将搜索适合您的方程的值。这适用于单个单元格。 类似于下面的东西可能会起作用..
https://www.excelforum.com/excel-programming-vba-macros/659443-solver-or-solver-table-help.html
Option Explicit
Public Sub Solver_Solution()
Dim myR
Dim c
Set myR = Range("C20", "C25")
For Each c In myR
SolverOk SetCell:="$K$15", MaxMinVal:=3, ValueOf:=c.Value, ByChange:="$C$15"
SolverSolve userfinish:=True
c.Offset(0, 1).Value = Cells(15, "C").Value
Next
End Sub
https://learn.microsoft.com/en-us/office/vba/excel/concepts/functions/solverok-function
默认情况下未启用 Solver 插件。在使用此功能之前,您必须启用并安装 Solver 插件。有关如何执行此操作的信息,请参阅使用求解器 VBA 函数。安装 Solver 插件后,您必须建立对 Solver 插件的引用。在 Visual Basic 编辑器中,当模块处于活动状态时,单击“工具”菜单上的“引用”,然后选择“可用引用”下的“求解器”。如果“Solver”未出现在“可用引用”下,请单击“浏览”,然后打开 \Program Files\Microsoft Office\Office14\Library\SOLVER 子文件夹中的 Solver.xlam。
(我的解决方案是建议使用宏在不同的单元格中多次运行求解器函数。)