用户定义函数的值

时间:2013-10-17 19:48:28

标签: excel excel-vba excel-2010 vba

我在Excel 2010 VBA中有一个用户定义的函数。

在单元格A1中,我调用该函数:=myfunction(),并在A1单元格中正确显示返回值(作为整数)。

我关心的是如何从VBA中的其他函数获取A1单元格的值。我希望MyOtherFunction()获得A1的数量。

单元格A1=MyFunction()

function MyFunction() as integer
   ......
   MyFunction = 99
End function

我在99中正确看到了值A1

function MyOtherFunction()
   dim valor as integer
   valor =  Workbooks("xxx.xlsm").Sheets("yyy").Range("A1").Value
End function

在该函数中,变量valor返回0而不是99

2 个答案:

答案 0 :(得分:0)

当然你可以写:

Function MyOtherFunction()
    MyOtherFunction = Range("A1").Value
End Function

或者我错过了这一点?

答案 1 :(得分:0)

Function MyOtherFunction(Rng As Range) As Whatever
    '~~> Rest of the code
End Function

在工作表中作为UDF

=MyOtherFunction(A1)

在VBA中

Sub Sample()
    Dim Ret
    Ret = MyOtherFunction(ThisWorkbook.Sheets("Sheet1").Range("A1"))
End Sub