评估大于x但小于x VBA

时间:2017-02-24 09:44:06

标签: excel vba evaluate

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

我通过使用Evaluate函数实现了这一点,如下所示:

Evaluate("5>4")

正如人们所料,它返回True。我的问题是如何评估以下声明:

5大于4,但小于10

当然,我将用变量代替数字。

我意识到我可以将字符串拆分为两个部分的数组并单独测试,但必须有一种方法可以将一个参数传递给test。

1 个答案:

答案 0 :(得分:2)

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

另一个替代方案可能是ScriptControl Eval,但无法访问Evaluate

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