无法从Excel工作表单元格调用VBA函数

时间:2014-09-06 10:13:28

标签: excel vba

尝试使用Excel工作表单元格中的自定义VBA函数时,出现错误: “您输入的公式包含错误”

但是,当我从VBA调用相同的函数时,它可以正常工作。

VBA功能:

Public Function R1C1_value(RowIndex As Integer, ColIndex As Integer, Optional WorkSheetName As String) As Variant
    Dim ws As WorkSheet
    If Trim(WorkSheetName) = "" Then
        Set ws = ActiveSheet
    Else
        Set ws = ActiveWorkbook.Worksheets(WorkSheetName)
    End If
    R1C1_value = ws.Cells(RowIndex, ColIndex).Value
End Function

VBA函数调用:

Sub R1C1_value_test()
    Dim res
    res = R1C1_value(1, 9, "CVP")
    MsgBox "res: " & res
End Sub

Excel函数调用

=R1C1_value(1,9)

1 个答案:

答案 0 :(得分:2)

函数名称不是Excel中的有效名称,即使它在VBA中被接受。如果将其更改为xR1C1_value,则您的函数应该可以正常工作。