Excel VBA中if語句的用法詳解
我們都知道,作為程序,VBA有兩大結構,一個是if語句,一個是循環(huán)語句。在VBA中,if語句是一種基本的語句結構,也是非常廣泛使用的語句,具有很強的實用性。下面將詳細介紹VBA中if語句的用法。 1
我們都知道,作為程序,VBA有兩大結構,一個是if語句,一個是循環(huán)語句。在VBA中,if語句是一種基本的語句結構,也是非常廣泛使用的語句,具有很強的實用性。下面將詳細介紹VBA中if語句的用法。
1. if語句的含義
if語句的字面意思是“如果”的意思,也就是說,如果條件為真,那么就執(zhí)行if語句里面的程序。這個程序一般指then后面的內(nèi)容。一個if語句可以沒有end if語句,但絕對不能沒有then語句,這一點需要注意。
2. 結構
結構一般用于比較簡單的判斷語句執(zhí)行。下面以一個實例程序來講解:
Sub 判斷語句()
If Cells(1, 1) <> "" Then
MsgBox "單元格不為空"
End If
End Sub
以上程序的功能是:如果第一個單元格不為空,那么就彈出一個提示框“單元格不為空”。
3. if結構
if結構用于單選擇判斷語句執(zhí)行。具體用法如下實例:
Sub 判斷語句()
Dim i As Integer
For i 1 To 100
If Cells(i, 1) "" Then
Cells(i, 2) "VBA教研室"
Exit For
End If
Next
End Sub
以上程序的功能是:對于第一列的第一行到第十行單元格,如果單元格為空值了,那么在相應的第二列單元格輸出“VBA教研室”。
4. if結構
if結構用于事件只有兩個可能情況先選擇的判斷語句。具體見下面實例分析:
Sub 判斷語句()
Dim i As Integer
For i 1 To 2
If Cells(i, 1) "" Then
Cells(i, 2) "false"
Else
Cells(i, 2) "Ture"
End If
Next
End Sub
以上程序的功能是:對于第一列的第1、2行兩個單元格做判斷,如果單元格值為空,則在相應的第二列單元格輸出“false”,否則輸出“True”。
5. if結構
if結構用于多條件判斷語句執(zhí)行。具體見下面實例分析:
Sub 判斷語句()
Dim i As Integer
For i 2 To 7
If Cells(i, 2) > 80 Then
Cells(i, 3) "優(yōu)秀"
ElseIf Cells(i, 2) < 80 And Cells(i, 2) > 60 Then
Cells(i, 3) "及格"
ElseIf Cells(i, 2) < 60 And Cells(i, 2) > 0 Then
Cells(i, 3) "不及格"
Else
Cells(i, 3) "考試無效"
End If
Next
End Sub
以上程序的功能是:對三名同學的成績作出判斷,大于等于80分的為“優(yōu)秀”;60到80之間的為“及格”;0到60分之間的為“不及格”;0分為“考試無效”。
6. if語句嵌套使用
if語句可以靈活地嵌套使用。如下面這個示例程序:
Sub 判斷語句()
If Cells(1, 1) <> "" Then
If Cells(1, 1) "VBA教研室" Then
MsgBox "OK!"
Else
MsgBox "NO!"
End If
End If
End Sub
以上程序的功能是:如果第一個單元格不為空,并且其值為“VBA教研室”,那么就彈出一個提示框“OK!”,否則彈出一個提示框“NO!”。