评估大于x,但小于x vba



我正在构建一个应用程序,该应用程序必须解释用户设置的一组指令,在运行时才知道的指令。

我通过使用评估功能来实现这一目标,因此:

Evaluate("5>4")

正如人们所期望的那样返回真实的。我的问题是如何评估以下陈述:

5大于4,但小于10

我将用变量代替数字。

我意识到我可以将字符串分为两个部分并单独测试,但是必须有一种通过单个参数进行测试的方法。

Application.Evaluate评估公式,因此 AND(5>A4,5<10)(5>A4)*(5<10)(结果为0或1)

另一种选择是ScriptControl Eval,但它无法访问Excel地址,例如Evaluate

With CreateObject("ScriptControl")
    .Language = "VBScript"              ' either VBScript or JScript
    Debug.Print .Eval("5>4 and 5<10")
End With

最新更新