vb里的If、then 語句、什么情況下then 后面的語句可以和then 同寫一行
if 表達式 then 如果后面只有單條語句的話,就可以直接寫在同一行,如果是多條語句的話,為了增強可讀性,一般是分行寫的(當然你也可以寫在同一行),參考以下幾種情況:
1、if 表達式 then dosomething。 '單條語句直接寫同一行,要分行要加 End if 結束
2、if 表達式 then dosomething : msgbox "提示1" : msgbox "提示2" : End '多條語句用冒號“:”分隔
3、if 表達式 then '常用的分行寫法,End if 結束
dosomething
msgbox "提示1"
msgbox "提示2"
End
end if
vb條件語句If..then后面接的語句什么時候寫在同一行,與分開寫有什么
除了“是否需要 End if 來結束條件語句”這淺層區別,還有:
若要執行的句子只有一個,寫在一行比較方便。
例如:
If a=1 Then b=2
若要執行的句子有多個,寫在一行不方便,故分多行寫。
例如:
If a=1 Then
b=2
c=3
d=4
e=5
End If
上面這句等價于:
If a=1 Then b=2:c=3:d=4:e=5
這樣不甚美觀之余還不易于后期檢查修改。
所以,執行一條語句,可寫在一行;執行語句組,做好分開寫。
另外,樓上Yuqi_Tan所說
“(2)寫在一行上時不能帶else;分行寫時能帶else或elseif語句。”
這是有誤的。
一行中,依然可以用Else
例如:
If a>1 Then b=1 Else b=2
這句是正確的。
vb中如果if和then語句全部在同一行,不需要end if嗎
VB中以單行形式寫代碼,是不需要End If語句的。只有使用塊形式的寫語句,必須有End If語句的。
If。Then。Else 語句,根據表達式的值有條件地執行一組語句。
語法:
可以使用單行形式(第一種語法)來做短小簡單的測試。
注意 在單行形式中,按照 If。Then
判斷的結果也可以執行多條語句。所有語句必須在同一行上并且以冒號分開,如下面語句所示:
If A > 10 Then A = A + 1 : B = B + A : C = C + B
VB if then 判斷語句如何使用
If d = 3 Or 4 Or 5 Or 6 Then zhi = 1
不能這樣判斷
這樣判斷等效于:
If (d = 3) Or 4 Or 5 Or 6 Then zhi = 1
=>If 0 Or 4 Or 5 Or 6 Then zhi = 1
=>If 4 Or 5 Or 6 Then zhi=1
=>If 7 Then zhi=1
=>If True Then zhi=1
=>zhi=1(即恒成立)
下面的同樣如此,Or作為位運算符參加運算,前方運算結果恒為不等于0 的數字即True,所以zhi被一直賦值直到最后zhi=5。
修改為類似于
If d = 60 Or d = 64 Then zhi = 5
即可,這樣運算方式為
If (d = 60) Or (d = 64) Then zhi=5
=>If True(或者False) Or True(或者False) Then zhi=5 即可以進行判斷。
VB If
幾個if間沒影響不是。。不可以同時執行么
Dim x As Integer Dim y As Integer Private Sub Form_Load() Randomize x = Rnd * 100 y = Rnd * 100 End Sub Private Sub Timer1_Timer() * = * + x * = * + y If * + * > * Then y = -y If * > 2500 Then y = -y If * < 0 Then y = -y If * < 0 Then x = -x If * > 3960 Then x = -x End Sub
轉載請注明出處華閱文章網 » vbifthen語句