公式中使用的自定义vba函数中当前单元格的范围

时间:2012-05-25 07:40:25

标签: excel function vba formula

我想编写一个函数Foo,可以在公式中使用它来返回单元格的内容。

例如,如果在单元格B2中,我写=Foo()我想获取B1的内容。

我知道我可以直接写=B1。显然,我在这里简化了案例。

那么,这个函数是怎么样的。

更确切地说,我希望(也)能够使用其他函数中的此函数(例如,将Bar(factor)函数与上面的单元格相乘,因此我可以编写=Bar(2)

2 个答案:

答案 0 :(得分:2)

这通常是一个坏主意,因为你必须使函数变得不稳定,对计算产生连锁效应等。

Public Function Foo() As Variant
    Application.Volatile
    Foo = Application.Caller.Offset(-1, 0)
End Function

答案 1 :(得分:-1)

这有效

Public Function Foo() As Variant
    Foo = Application.ThisCell.Offset(-1, 0)
End Function