
很多粉丝朋友向我表达了对学习VBA的强烈愿望,因此韩老师决定从今天起,撰写一系列关于VBA应用的文章。其实,在之前的Excel教程中,我已经通过“宏”帮助大家实现了一些重复动作的自动化,那可以说是VBA的初步应用。
我不会每天都写VBA相关的内容,因为还有很多粉丝关心函数应用的问题。
学习VBA是一项大工程,无法涵盖所有的细节,例如数据类型、常量变量、语法等等。我只能从简单的应用开始讲解,更多的内容需要大家自行领悟和探索。
今天,我给大家介绍一个用IF函数来判断等级的问题。
假设我们有以下数据:
我们可以使用Excel的IF函数来根据销售业绩判断每位销售员的业绩等级。具体的公式是:“=IF(B2>=8,”优秀”,IF(B2>=4,”合格”,”不合格”))”。
判断规则如下:
销售业绩大于等于8的,业绩等级为“优秀”;
销售业绩在4到8之间的,业绩等级为“合格”;
销售业绩小于4的,业绩等级为“不合格”。
接下来是如何用VBA实现同样的功能。
打开VBA窗口,可以通过按下Alt+F11组合键,或者在“开发工具”菜单中选择“Visual Basic”,还可以在工作表名称上右击,选择“查看代码”来打开。
在右侧的工程窗插入“模块”,然后在代码窗添加以下代码:
vba
Sub 业绩等级()
Dim i As Integer ‘定义一个整型变量i
i = 2 ‘给变量i赋初值2
Do While Range(“B” & i).Value “” ‘当B列数据不为空时进行等级判断
If Range(“B” & i) >= 8 Then
Range(“D” & i).Value = “优秀”
ElseIf Range(“B” & i) >= 4 Then
Range(“D” & i).Value = “合格”
Else
Range(“D” & i).Value = “不合格”
End If
i = i + 1 ‘移动至下一行数据
Loop ‘循环判断直到B列数据为空
End Sub
运行这段代码后,就可以根据B列的销售业绩来判断并显示每位销售员的业绩等级了。而且,由于使用了Do While语句,这段代码不受数据行数的限制,只要数据有增加,随时都可以点击“判断销售业绩”按钮来进行等级判断。
如果你还不清楚如何插入“判断业绩等级”按钮,可以参考之前的Excel教程《让“宏”来替你做重复动作》。
关于更多判断等级的方法,推荐大家阅读韩老师的文章《Excel等级评定:IF、VLOOKUP、LOOKUP、CHOOSE、INDEX都能完成》,里面有更详细的介绍和示例。
