2014-02-21 4 views
-1

Я пытаюсь сравнить два значения друг с другом, моя программа корректно вернется, когда условие выполнено. Например; 9 < = 100, это возвращается как Повторный заказ. но если я сменил 9 на 101, он все равно возвращает Re-Order. Что я могу сделать для решения этой проблемы? Подсказка:Функция vb возвращает true, когда false

Private Function ReOrderPriority() As String 
    Dim imp As Integer = 0 
    If imp = (StockFrmTxtBox6.Text <= StockFrmTxtBox8.Text) Then 
     Return "Re-Order" 
    Else 
     Return "Not yet applicable" 
    End If 
End Function 
+1

это не '9 <= 100', а' '9" <= "100" '. Поверните опцию Strict сразу – Plutonix

ответ

2

Это потому, что вы выполняете сравнение строк, а не целочисленное сравнение. Сначала вы должны проанализировать свой ввод в Integer.

Private Function ReOrderPriority() As String 
    If Integer.Parse(StockFrmTxtBox6.Text) <= Integer.Parse(StockFrmTxtBox8.Text) Then 
     Return "Re-Order" 
    Else 
     Return "Not yet applicable" 
    End If 
End Function 
+0

+1, вероятно, немного более идиоматично использовать 'CInt' здесь вместо' Integer.Parse' – JaredPar

Смежные вопросы