首页 > 解决方案 > 比较 VBA 中的负值以产生通过和失败的结果

问题描述

我还是 VBA 的新手,这是一个简单的问题,但我正在比较大于或等于“通过”的负数,否则它“失败”,例如,如果我输入:

40是通过,
20是通过,
但是如果我输入-20它显示“失败”,它应该“通过”,而我把-40它输入“通过”,它应该“失败”。

我不知道如何解决它,因为对我来说条件是正确的,但结果却不是。

If Me.kepi4.Value >= "-30.70" Then
    MsgBox "The KEPI 4 Value Pass the Evaluation"
    Me.gd4.Value = "PASS"
    UserForm9.Show
Else
    MsgBox "Check Your Kepi 4 Evaluation Value"
    Me.gd4.Value = "FAIL"
    UserForm10.Show
End If

标签: excelvbanegative-number

解决方案


"-30.70"是一个字符串/文本,而不是一个数字。应该是-30.70

此外,您应该将您的文本框值转换为双精度值cDbl(Me.kepi4.Value),以便将其转换为您可以实际与数学运算符进行比较的数字>=

它应该如下所示:

If cDbl(Me.kepi4.Value) >= -30.70 Then

推荐阅读