Я написал код в VBA для извлечения данных из базы данных Access в Excel на основе некоторых входных параметров.Когда дело доходит до утверждения If, один из критериев, который проверяет диапазон переменной «Speed», истинен, однако я проверил, что этот критерий должен быть неправильным.Например, скорость = 49, VSP = 1,5, 1 <= скорость <25 в 1-м, если условие указывает на истину, что является нелепым, а VSP <0 указывает на ложное значение, поэтому оно переходит в 1-е условие, если 1 <= скорость <25 все еще указываетtrue и 0 <= VSP <3 также true, тогда функция возвращает значение из базы данных Access.Иначе, если скорость = 49, VSP = 6,5, функция все еще выполняет часть «ElseIf (1 <= Speed <25) И (0 <= VSP <3) Тогда, оператор 2».Кажется, только первое условие условие elseif расценивается как истинное. </p>
Что не так с моим утверждением if?Любой совет?
Код:
Function F (ByVal Speed, VSP as single)
.............
If (1 <= Speed < 25) And (VSP < 0) Then
statement 1
ElseIf (1 <= Speed < 25) And (0 <= VSP < 3) Then
statement 2
ElseIf (25<= Speed < 50)) And (0<= VSP <3) Then
statement 3
End if
End function