我们正在玩EAN13条码并检查数字格式是否正确。当它是我们希望以适当的格式输出数字。当我们尝试这个时,我们得到编译错误:“预期:结束语句”。 错误发生在代码中的“ weight = first ... ”计算中。
知道可能出错的是什么?试图谷歌错误,我们没有发现任何适用于我们的情况。
Dim first As Double
Dim second As Double
Dim third As Double
Dim fourth As Double
If Left(data, 5) = 3 Or Left(data, 5) = 4 Or Left(data, 5) = 5 Then
' Checking if it's a weight and then converting the string to double
first = CDbl(Val(Left(data, 12)))
second = CDbl(Val(Left(data, 13)))
third = CDbl(Val(Left(data, 14)))
fourth = CDbl(Val(Left(data, 15)))
If Left(data, 5) = 3 Then
' 1,234 kg
weight = first * 1 + second * 0,1 + third * 0,01 + fourth * 0,001
ElseIf Left(data, 5) = 4 Then
' 12,34 kg
weight = first * 10 + second * 1 + third * 0,1 + fourth * 0,01
ElseIf Left(data, 5) = 5 Then
' 123,4 kg
weight = first * 100 + second * 10 + third * 1 + fourth * 0,1
End If
End If
End If
答案 0 :(得分:2)
您需要用句点替换逗号。 Vb6当时不能识别为十进制分隔符。 0,1
应为0.1
等
答案 1 :(得分:2)
VB6中双重文字的格式为1.1
。你使用逗号作为分数分离,而vb6不接受它。