Eval内的Excel评估

我在VBA中使用自定义eval函数。 但是,评估包含另一个eval()的公式将失败:

=Eval(I21) 

单元格I21 :(公式本身的作品)注意:INDIRECT()也不起作用

 '=MATCH("SOME TEXT",eval($I$22),0) 

单元格I22 :(位置参考)

 ''1516Activity'!$C:$C 

VBA:

 Function Eval(Ref As String) Application.Volatile Eval = Application.ThisCell.Parent.Evaluate(Ref) End Function 

VBA:

 Eval = Application.Evaluate(Ref) 

此解决scheme仅适用于单元格引用使用完全限定的范围地址。 如果你的引用依赖于调用者(涉及row()+ – 和column()+ – ),那么你和我的情况是一样的,没有办法。