Excel VBA-无法从用户定义的函数调用GoalSeek

Excel VBA-无法从用户定义的函数调用GoalSeek,excel,vba,function,Excel,Vba,Function,这是我调用GoalSeek的用户定义函数 我把它放在模块中,但是它不能解决给定的上下文 Function FindYield() As Double Worksheets("Sheet1").Range("N8").GoalSeek _ Goal:=0, _ ChangingCell:=Worksheets("Sheet1").Range("N9") End Function 相同的设置与Sub相同。您需要使用一个Sub函数,而不是函数。函数只能向它们所在的单元格返回一

这是我调用GoalSeek的用户定义函数

我把它放在模块中,但是它不能解决给定的上下文

Function FindYield() As Double
    Worksheets("Sheet1").Range("N8").GoalSeek _
    Goal:=0, _
    ChangingCell:=Worksheets("Sheet1").Range("N9")
End Function

相同的设置与Sub相同。

您需要使用一个Sub函数,而不是函数。函数只能向它们所在的单元格返回一个值。

好,但在我的情况下,我希望在调用公式时触发此计算。如果我使用Sub,我还需要设置某种按钮等来触发计算,对吗?您可以使用事件宏…………它可以在重新计算公式时调用GoalSeek(自动)