好的所以我一直在研究我正在制作的程序,出于某种原因,当我将一些代码放入else if语句时,它根本不会运行语句甚至不是原始的If语句,但是当我把它放在一个常规的If和else语句中时,它可以很好地工作。
这段代码有效:
If TextBox5.Text > TextBox1.Text & TextBox6.Text > TextBox2.Text Then 'NE
Bearing = Atan(X2 / Y2) * 57.3
Else
Bearing = Atan(Y2 / X2) * 57.3
Bearing = Bearing + -Bearing + -Bearing + 90
If BOFF > 0 Then
Bearing = Bearing - Math.Round(BOFF)
Else
Bearing = Bearing + Math.Round(BOFF)
End If
End If
这段代码不起作用:
If TextBox5.Text > TextBox1.Text & TextBox6.Text > TextBox2.Text Then 'NE
Bearing = Atan(X2 / Y2) * 57.3
ElseIf TextBox5.Text > TextBox1.Text & TextBox6.Text < TextBox2.Text Then
Bearing = Atan(Y2 / X2) * 57.3
Bearing = Bearing + -Bearing + -Bearing + 90
If BOFF > 0 Then
Bearing = Bearing - Math.Round(BOFF)
Else
Bearing = Bearing + Math.Round(BOFF)
End If
End If
可能是一个语法错误的东西,但它根本没有出现错误,完美地运行代码和所有这些。我不知道我在这里做错了什么。
答案 0 :(得分:1)
您应该使用AND
代替&
AND
是逻辑运算符&
用于连接字符串
它是逻辑以及按位AND运算符。如果两者都有 操作数是真的,然后条件变为真。这个运营商没有 执行短路,即它评估两个表达式。
If TextBox5.Text > TextBox1.Text And TextBox6.Text > TextBox2.Text Then 'NE
'Code
ElseIf TextBox5.Text > TextBox1.Text And TextBox6.Text < TextBox2.Text Then
'Code
End If
注意:的
如果TextBox1.Text =4
,TextBox6.Text=1
然后TextBox1.Text & TextBox6.Text
的值将产生41
请参阅此demo
&
用于连接两个字符串