1

例えば:

A1 に次の式があります: 2*x+3*x

B1 のこの式: =SUBSTITUTE($A$1,"x",E1) したがって、B1 の私の出力は 2*1+3*1 です

今、私が望むのは、その操作を評価して、2*1+3*1 ではなく 5 を表示することです。

同じセルにあるか別のセルにあるかは気にしませんが、どうすればよいですか?

=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 に答える