1
在试图使用定制VBA函数从Excel工作表单元格,我得到的错误: “你输入的公式包含一个错误”无法从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)
谢谢,它的工作。顺便说一下,这背后的原因是什么? – luvlogic 2014-09-06 10:34:08
从Excel帮助中,我不清楚为什么这个特定的字符串应该被Excel拒绝。名称不能与单元格地址冲突,或与Excel内置名称冲突;但似乎还有其他未经证实的拒绝理由。 – 2014-09-06 10:36:53
我在猜测,因为R1是一个单元格的有效地址,它不能告诉你是否在谈论单元格值 – DLeh 2015-01-21 21:22:39