如何写一个函数的单元格中的公式?

我想用一个函数在一个特定的单元格中写一个公式。

我写了这个,但它不起作用,我不明白为什么:

Function formulaCell(x, y) ActiveSheet.Cells(x, y).FormulaR1C1 = "=IF(R[-1]C=0,"""",R[-1]C)" End Function 

Excel返回#VALEUR

提前致谢

如果函数没有从单元中调用,你的函数就可以正常工作

例如,这里是来自Sub的调用

 Sub MAIN() Dim msg As String msg = formulaCell(3, 3) MsgBox msg End Sub Function formulaCell(x As Long, y As Long) As String ActiveSheet.Cells(x, y).FormulaR1C1 = "=IF(R[-1]C=0,"""",R[-1]C)" formulaCell = "Mission Accomplished!!" End Function 

单元格中的 UDF()只能将值返回给该单元格。 Sub中的 UDF()可以做更多的事情!