使用解算器最小化vba函数(而不是excel单元格wrt其他excel单元格)

使用解算器最小化vba函数(而不是excel单元格wrt其他excel单元格),excel,vba,solver,minimization,Excel,Vba,Solver,Minimization,我想通过改变alpha的值来最小化函数myFunction。在这个虚拟示例中,我希望alpha=X=3 为此,我希望使用Excel解算器,并避免在工作表中复制部分代码。此代码是最小二乘插值器的一部分 因此,我想知道如何正确地编写最小函数求解器部分。其余的都是正确的 Option Explicit Private alpha As Double Function myFunction(X) 'myFunction , the variable is alpha myFunct

我想通过改变alpha的值来最小化函数myFunction。在这个虚拟示例中,我希望alpha=X=3

为此,我希望使用Excel解算器,并避免在工作表中复制部分代码。此代码是最小二乘插值器的一部分

因此,我想知道如何正确地编写最小函数求解器部分。其余的都是正确的

Option Explicit

Private alpha As Double

Function myFunction(X)

    'myFunction , the variable is alpha
    myFunction = ( alpha - X ) ^2

End Function


Public Sub Minimizer()

    Dim X As Double
    X = 3
    Solver (change alpha with the value that minimize myFunction(X))

End Sub

不幸的是,你想做的是不可能的。解算器设计用于工作表中


如果决定将数据放置在工作表上,则可以使用SolverOptions设置解算器选项,使用SolverRok设置要更改的目标单元格和单元格,使用SolverRadd添加约束,以及使用SolverSolve进行解算。更多详情请参见。

我不确定您想做什么,我想我的英语已经达到极限了。但如果我理解的话,您可以在宏/工作表代码中使用Excel公式,比如var=WorksheetFunction。。如果我完全误解了,请告诉我,我将删除此评论。