我使用= Eval()函数将转换为文本的公式(主要由CONCATENATE函数创建,例如我将cell = A2 + B2作为文本)转换为excel函数。 = Eval()是自定义函数,可以在许多excel博客和培训站点上找到。我使用的VBA代码是:
Function Eval(Ref As String)
Application.Volatile
Eval = Evaluate(Ref)
enter code here
End Function
我遇到的问题是,这仅适用于不包含其他公式的公式。例如,在我用文本创建单元格(通过使用CONCATENATE):= 2 ^(0.5)它正常工作,= Eval()给我正确的答案(1,414),但是当它为= sqrt(2)它给我错误。