楼主 尛安 |
Q:如何根据不同条件划分不同等级
A:分别有三个方法: 一、函数 二、SQL 三、VBA 分别如下: 一、函数法: 1、IF方法- =IF(A2<60,"不及格",IF(A2<80,"及格",IF(A2<90,"良好","优秀")))
2、lookup方法- =LOOKUP(A2,{0,60,80,90},{"不及格","及格","良好","优秀"})
二、SQL方法: 1、IIF方法:- select iif(成绩<60,"不及格",iif(成绩< 80,"及格",iif(成绩<90,"良好","优秀"))) as 成绩状况 from [Sheet1$] where 成绩 is not null
2、switch方法:- select switch(成绩<60,"不及格",成绩< 80,"及格",成绩<90,"良好",成绩>=90,"优秀") as 成绩状况 from [Sheet1$] where 成绩 is not null
示例动画:
三、VBA方法: 1、if方法:- Sub 方法一()
- For i = 2 To 9
- If Cells(i, 1) < 60 Then
- Cells(i, 2) = "不及格"
- ElseIf Cells(i, 1) < 80 Then
- Cells(i, 2) = "及格"
- ElseIf Cells(i, 1) < 90 Then
- Cells(i, 2) = "良好"
- Else: Cells(i, 2) = "优秀"
- End If
- Next
- End Sub
2、select case方法:- Sub 方法二()
- For i = 2 To 9
- Select Case Cells(i, 1).Value
- Case 0 To 59
- Cells(i, 2) = "不及格"
- Case 60 To 79
- Cells(i, 2) = "及格"
- Case 80 To 89
- Cells(i, 2) = "良好"
- Case Is > 89
- Cells(i, 2) = "优秀"
- End Select
- Next
- End Sub
三、iif方法:- Sub 方法三()
- For i = 2 To 9
- Cells(i, 2) = IIf(Cells(i, 1) < 60, "不及格", IIf(Cells(i, 1) < 80, "及格", IIf(Cells(i, 1) < 90, "良好", "优秀")))
- Next
- End Sub
删除B2:B9- Sub 删除()
- For I = 2 To 9
- Cells(I, 2).Clear
- Next
- End Sub
示例动画:
等级划分的多种方法.rar
|