Worksheets().Range().Formula 在 Excel vba 函数中不起作用?

Worksheets().Range().Formula doesn't work in an Excel vba function?

我在使用 "Worksheets().Range().Formula" 和 Excel VBA 时遇到问题。 如果我使用宏,它工作正常(参见下面的子方法)。 但是如果我在一个函数中使用它,它就不起作用并且我有一个“#VALEUR!” (在法语中,我认为它应该是#VALUE!在英语中)CELL 中的错误消息。 如何解决问题? 我正在使用 EXCEL 2010

Sub StoreFormula()
    Worksheets("Sheet1").Range("D20").Formula = "='Sheet2'!D13"
End Sub

Function Test() As String 
   Call StoreFormula
   Test = Application.Caller.Address
End Function

从单元格公式调用的用户定义工作表函数只能return调用单元格的值:它们不能更改任何其他单元格中的公式或值。