hello,大家好,今天跟大家分享下我们如何使用vlookup函数来代替if函数实现条件判断,对于vlookup函数很多人应该非常的熟悉,但是对于if函数有可能很多人会觉得比较难,特别是if函数的嵌套,今天就跟大家分享下我们如何使用vlookup函数来代替if函数实现条件判断
一、常规用法如下图我们想根据性别划分队伍
使用if函数
公式:=if(b3=男,1队,2队).
第一参数:if函数的条件,b3=男在这里判断b3的单元格的值是不是等于男
第二参数:1队,如果条件正确,函数就会返回1队
第三参数:2队,如果条件错误,函数就会返回2队
使用vlookup函数
使用vlookup解决类似的问题首先我们需要构建一个辅助区域,如下图
我们将辅助区域作为vlookup函数的查找区域,然后输入公式
公式: =vlookup(b3,$f$3:$g$4,2,0)
第一参数:b3,就是我们要查找的值
第二参数:$f$3:$g$4我们创建的辅助区域,在这按f4选择绝对引用
第三参数:2,因为在这里队伍在辅助区域的第二列所以输入2
第四参数:0,在这里代表精确匹配
在这里我们可以看到,vlookup能够替代if函数实现条件判断,不过我们需要先构建一个辅助区域.
二、区间判断在日常的工作中我们常常会遇到对某个区间进行判断的问题,最典型的就是根据学生的成绩区间划分等级,如下图
在这里右侧是成绩等级对照表,我们要根据成绩区间对成绩进行判断,在这里有4个区间,所以当我们使用if函数的嵌套的时候就要使用3个if函数进行嵌套,公式如下
公式:=if(b2>=90,优秀,if(b2>=80,良好,if(b2>=60,及格,不及格)))
在这里我们是从大到小输入条件的,并且if函数是嵌套在上一个if函数的第三参数中,下面带入一个值跟大家讲解下它是如何计算的,我们带入小王的成绩34分
在这里当我们带入34分的时候,第一个if函数,34大于等于90,这个是错误的,所以函数会返回第一个if函数的第三参数,而他的第三参数是第二个if函数,所以会进入第二个if函数,在第二个if函数中,34大于等于80也是错误的,所以函数会进入第二个if函数的第三参数,而他也是一个if函数,这样的话就进入了第三个if函数,在第三个if函数中,34大于等于60,这个也是错误的,函数会返回第三个if函数的第三参数,而他的结果是不及格,所以函数会输出结果为不及格
下面让我们来看下使用vlookup函数是如何解决这样的问题的,同样的首先我们需要构建一个辅助的区域
在这里构建的辅助区域中,我们让每个区域的最小值来对应等级,在这里0对应不及格是因为在最后一个成绩区间值,最小值是0
需要注意一点的是,我们构建的辅助区域的第一列,必须升序排序,在这里我们已经排好了,当所有完成后我们就可以使用vlookup函数来进行区间判断了
公式:=vlookup(b2,$f$11:$g$14,2,true)
在这里vlookup的
第一参数:b2,就是成绩所在的单元格
第二参数:$f$11:$g$14,我们构建的辅助区域,按f4选择绝对引用
第三参数:2,因为等级在查找区域的第二列,所以输入2
第四参数:true,近似匹配
在这里运用了vlookup函数的近似匹配,当vlookup函数找不到精确的结果的时候,就会返回小于查找值的最大值,比如在这里,我们带入34计算下,当我们带入34的时候,在查找区域并没有34所以函数会返回小于34的最大值,而在查找区域中,小于34的最大值是0,而0对应的又是不及格,所以函数的结果就是不及格
以上就是这一章的全部内容了,你觉得vlookup和if函数那个更简单呢?
我是excel 从零到一,关注我持续分享更多excel技巧