声明:笔记来源于我要自学网-《Excel VBA基础教程》-授课讲师:曾贤志
'判断语句IF单条件与多条件判断
Sub IF条件判断之单条件1()
Dim a%, b% '声明变量
a = 2 '给变量赋值
b = 2 '给变量赋值
If a = b Then MsgBox "相等" '如果a等于b,就输入到窗口显示“相等”
End Sub
Sub IF条件判断之单条件2()
Dim a%, b% '声明变量
a = 2 '给变量赋值
b = 2 '给变量赋值
If a = b Then '如果a等于b 那么
MsgBox "相等" '文本窗口显示“相等”
End If '当IF语句如上进行换行输入,需要在下方输入结束语句
End Sub
Sub IF条件判断之单条件3()
Dim a%, b% '声明变量
a = 2 '给变量赋值
b = 2 '给变量赋值
If a = b Then '如果a等于b 那么
MsgBox "相等" '文本窗口显示“相等”
Else
MsgBox "不相等" '当条件不满足的时候,文本窗口显示"不显示"
End If
End Sub
实例应用:如图根据分数判断等级
Sub IF条件判断之多条件等级划分()
If Sheet1.Range("b1") >= 90 Then '如果工作表2里的单元格b1大于等于90,那么
Sheet1.Range("b2") = "优秀" '就在b2单元格显示优秀
ElseIf Sheet1.Range("b1") >= 80 Then
Sheet1.Range("b2") = "良好"
ElseIf Sheet1.Range("b1") >= 70 Then
Sheet1.Range("b2") = "中等"
Else
Sheet1.Range("b2") = "较差" '当单元格b1都不成立的时候,那么就在b2单元格显示较差
End If
End Sub
Sub IIF函数与工作表函数语法一致()
Sheet1.Cells(2, 3) = IIf(Sheet1.Cells(1, 2) >= 90, "优秀", IIf(Sheet1.Cells(1, 2) >= 80, "良好", IIf(Sheet1.Cells(1, 2) >= 70, "中等", "较差")))
End Sub
***IF条件判断小结***
1、单行形式(IF...Then)
If 条件判断_Then 条件成立结果
注意:在单行形式中,按照 IF...Then 判断的结果也可以执行多条语句。
所有语句必须在同一行上并且以冒号分开。
例子:
Sub test()
If 11 > 10 Then a = a + 1: b = 1 + a: c = 1 + b
End Sub
2、单行形式(If条件判断 Then 条件成立 Else 条件不成立)
例子:
Sub test2()
If 2 > 1 Then MsgBox "yes" Else MsgBox "no"
End Sub
3、块形式(If... Then...End) :该种写法适合语句比较复杂,比较长的时候,让代码易读性强
If条件判断 Then
条件成立结果
End If
例子:
Sub test3()
If 11 > 10 Then
a = 1 + a
b = 1 + a
c = 1 + b
End If
End Sub
4、块形式的If嵌套
If 条件判断 Then
成立时的结果
ElseIf 条件判断 Then
成立时的结果
.........
Else
不成立时的结果
End If
例子:
Sub IF条件判断之多条件等级划分()
If Sheet1.Range("b1") >= 90 Then
Sheet1.Range("b2") = "优秀"
ElseIf Sheet1.Range("b1") >= 80 Then
Sheet1.Range("b2") = "良好"
ElseIf Sheet1.Range("b1") >= 70 Then
Sheet1.Range("b2") = "中等"
Else
Sheet1.Range("b2") = "较差"
End If
End Sub