本文介紹vba if判斷語句的使用方法,在最后以一個實(shí)例來剖析vba if語句的具體應(yīng)用。
vba if語句為判斷語句。根據(jù)條件的值,可使用 If…Then…Else 語句運(yùn)行指定的語句或一個語句塊。If…Then…Else 語句可根據(jù)需要嵌套多級。
但是,為了代碼的可讀性,建議使用其余的語句,比如 Select Case 語句而不使用多層嵌套的vba中的 If…Then…Else 語句。
vba if語句用法解釋:
當(dāng)條件為 True 時,若只要執(zhí)行一個語句,則可以使用單行的 If…Then…Else 語法。
使用 If…Then…Else 語句可以定義兩個可執(zhí)行的語句塊:其中一個塊會在條件為True 時執(zhí)行;而另一個塊會在條件為 False 時執(zhí)行。
vba if語句執(zhí)行流程如下:
vba if語句實(shí)例剖析
此題共兩段代碼:第一段:
Sub 隨機(jī)數(shù)()
[a1].Value = Int(Rnd * 20)
[c1].Value = Int(Rnd * 20)
End Sub
解釋:A1、C1單元格的值為隨時生成的20以內(nèi)的整數(shù)。Rnd是VBA中的隨機(jī)函數(shù),也可以使用excel工作表中的公式來取代上一段代碼,如下:
Sub 隨機(jī)數(shù)()
Range("A1,c1").Formula = "=Int(Rand() * 20)"
End Sub
第二段:
Sub 答題()
If [e1].Value = "" Then
MsgBox "還沒有輸入答案"
Else
End If
If [e1].Value = [a1].Value + [c1].Value Then
MsgBox "答對了,你真棒!"
Else
MsgBox "答錯了,繼續(xù)努力!"
End If
Call 隨機(jī)數(shù)
End Sub
代碼解釋:第一個IF語句:如果E1單元格為空,提示消息框:還沒有輸入答案。
第二個IF語句:如果E1的值等于A1+C1,提示消息框:答對了,你真棒!,否則返回答錯了,繼續(xù)努力。最后用call關(guān)鍵字調(diào)用第一段代碼。