评估大于 x 但小于 x VBA
Evaluating Greater Than x But Less Than x VBA
我正在构建一个应用程序,该应用程序必须解释用户设置的一组指令,这些指令直到运行时才知道。
我是通过使用 Evaluate 函数实现的,如下所示:
Evaluate("5>4")
returns 没错,正如人们所期望的那样。我的问题是如何评估以下陈述:
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
我正在构建一个应用程序,该应用程序必须解释用户设置的一组指令,这些指令直到运行时才知道。
我是通过使用 Evaluate 函数实现的,如下所示:
Evaluate("5>4")
returns 没错,正如人们所期望的那样。我的问题是如何评估以下陈述:
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