Tag: 解算器

在JS应用程序中使用求解器

我需要重写从Excel VBA模块到JS应用程序的求解器function。 在Excel中,它是这样定义的: SolverOk SetCell:="$H$15", MaxMinVal:=3, ValueOf:=0, ByChange:="$G$17" SolverSolve True 我发现这个库在JS, https://github.com/Zolmeister/js-solver中使用Solver,但不知道如何写Excel如方程式。 请帮助,如果有人有线索。 我不熟悉Solver。

Excel中的求解器

我一直在试图find类似于Excel中的excel求解器。 例如,我有以下程序: L=2.4 UCL=L; LCL=-L ARL=1/(pnorm(LCL, mean = 0, sd = 1, lower.tail = TRUE)+pnorm(UCL, mean = 0, sd = 1, lower.tail = FALSE)) 我想要search一个“L”的值,使得我的结果“ARL”接近例如200。 有没有办法在r?

在VBA中使用行parsing器

我试图使用求解器来find182个单元的根,每个单元只依赖于另一个variables,输出单元从O2到O183,可变单元从P2到P183。 我正在尝试更改可变单元格以使输出单元等于1.代码有效,但结果不收敛。 因为我只想要一个固定值1,所以我没有设置MaxMin值。 代码是: Sub Solver() Dim setcellrange As Range, bychangerange As Range Dim i As Long For i = 3 To 5 Set setcellrange = Sheets("AshfordPierce").Cells(i, 15) Set bychangerange = Sheets("AshfordPierce").Cells(i, 16) SolverReset SolverOk SetCell:=setcellrange.Address, ValueOf:=1, ByChange:=bychangerange.Address, Engine:=1, EngineDesc:="GRG NONLINEAR" SolverSolve Next i End Sub 当我使用VBA的解算器function时,它工作,但VBA结果不会收敛。 任何帮助表示赞赏。

Visual Basic MacroSolve循环错误 – 数据只填充最后一行,我只想要综合返回的整个variables

下面是我的代码,我有两个主要问题: 我想要variablesvariables只是整个值(四舍五入)(例如:一个病人只需要x的药量,但包装的大小是设定的数量和剩余的药物被浪费,我不能使用1和半小瓶的药物,我必须使用2个小瓶)。 我的代码只填充底部行(36),而不是行数25在我的数据开始 Sub MacroSolve() Worksheets("Sheet1").Activate Rowcount = 25 Do While Not IsEmpty(Worksheets("Sheet1").Range("D" & Rowcount)) SolverReset SolverOptions precision:=0.001 SolverOk SetCell:="$H$" & Rowcount, MaxMinVal:=2, ValueOf:=0, ByChange:="$E$" & Rowcount & ":$F$" & Rowcount SolverAdd CellRef:="$E$" & Rowcount, Relation:=3, FormulaText:="0" SolverAdd CellRef:="$F$" & Rowcount, Relation:=3, FormulaText:="0" SolverAdd CellRef:="$G$" & Rowcount, Relation:=3, FormulaText:=Range("$D$" & Rowcount) SolverAdd CellRef:="$H$" & Rowcount, […]

Excel求解器和VBA:约束中的浮点数/十进制数被错误地转换为整数?

我正在Excel 2007和2010下运行VBA脚本,这些脚本涉及使用内置的Excel求解器进行的大量优化。 什么是指定十进制约束的正确方法,如X> = 0.0001,其中X将是问题的决策variables。 SolverAdd CellRef:=cells(5,5), Relation:=3, FormulaText:="0.0001" 或者我必须删除引号“”? Solver的VBA接口是否允许使用十进制(非整数)约束呢? 我在问,因为有时我得到(未经证实)的感觉,认为> = 0.0001的约束被错误地解释为> = 1,这当然会产生错误的结果。 如果有人能够为我澄清这些问题,那将是非常好的。 史蒂夫