1

例如:

我在 A1 中有这个公式:2*x+3*x

B1 中的这个公式: =SUBSTITUTE($A$1,"x",E1) 所以我在 B1 中的输出是 2*1+3*1

现在,我想要对该操作进行评估,使其显示 5 而不是 2*1+3*1

我不介意它是在同一个单元格上还是在不同的单元格上,但我该怎么做呢?

我尝试了 =VALUE(B1) 但它给了我一个错误,我尝试了 =INDIRECT("B1",0) 但它也给了我一个错误。我不熟悉这些功能,所以我不确定它们是否是我需要的。有什么建议么?

如果可能的话,我想在不使用宏的情况下做到这一点。

谢谢!

4

1 回答 1

2

你可以使用一个小的 UDF

Function Eval(exp As String)

    Dim rv
    rv = Application.Evaluate(exp)
    Eval = IIf(IsError(rv), CVErr(xlValue), rv)

End Function

然后在工作表中:

=Eval(SUBSTITUTE(B4,"x",5))
于 2012-05-30T21:42:02.980 回答