Excel中使用LOOKUP函数进行条件
2023/5/9 来源:不详之前,我发布了一篇文章Excel按单元格颜色求和,公式就是这么简单,在这篇文章中,我用“条件格式”中的“突出显示单元格规则”来快速查询到分数小于70分的成绩所在的单元格,有位读者给我留言,说能否用LOOKUP函数或者VLOOKUP函数来完成那个例子,今天这篇文章就来回答下他的这个问题,使用LOOKUP函数来进行条件查询,再对查询出的结果求和。
本文演示的环境如下
硬件型号:华硕顽石6代FLFJ
操作系统软件:Windows10家庭中文版(版本号)
软件版本:MicrosoftOffice专业增强版(版本号16.0..)
还用下面的这个例子,要对小于70分的所有成绩进行求和,按颜色求和方式求出的结果是,现在用LOOKUP函数来解决这个问题。
先来看下LOOKUP函数的语法,LOOKUP函数有两种使用方式,向量形式和数组形式,最常用的是向量形式,即是可以在一行或一列中搜索值;不主张用数组形式,要使用数组形式,必须对数据排序,不方便使用,用数组形式的话,更推荐用VLOOKUP函数和HLOOKUP函数。
LOOKUP函数向量形式的语法为:LOOKUP(lookup_value,lookup_vector,[result_vector])
lookup_value是必需的。即是所要查找的值,lookup_value可以是数字、文本、逻辑值、名称或对值的引用。
lookup_vector是必需的,只包含一行或一列的区域。lookup_vector中的值可以是文本、数字或逻辑值。
result_vector是可选的,只包含一行或一列的区域。result_vector参数必须与lookup_vector参数大小相同。意思是结果所选择的区域要与查找所选择的区域一样。
注意:如果LOOKUP函数找不到lookup_value,则该函数会与lookup_vector中小于或等于lookup_value的最大值进行匹配。
本文的这个例子是要进行条件查询,即查询出满足一定条件的数据,并不是直接查找到某个值。下面我们来完成这个例子。
先将表格的标题行和标题列复制到其他位置;
再在数据区域的第一个单元格中,这里是M3单元格,输入公式“=LOOKUP(1,0/(B),B3)”,来说明一下这个公式,B返回的是TRUE或FALSE,即如果B3中的数据小于70,就返回TRUE,否则返回FALSE,在运算中返回TRUE相当于是1,返回FALSE相当于是0,那么第二个参数0/(B)在条件为TRUE时是0,因为0除以1得0,这个公式就返回第三个参数M3对应的值,在条件为FALSE时为错误,因为除数为0无意义,这个公式就返回错误。
按ENTER确认后,返回结果为#DIV/0!,说明条件不满足。B3单元格中为84,大于70,不满足小于70的条件,故返回错误。
将剩余单元格填充完公式后,结果如下所示;
会发现小于70的分数都被查询出来了,但其他单元格的错误影响我们计算,使用IFERROR函数来将错误单元格都返回空值。在M3单元格中重新输入公式“=IFERROR(LOOKUP(1,0/(B),B3),"")”,再分别将其他单元格填充,结果如下:
最后,在H9单元格中输入公式“=SUM(M3:Q9)”,这样的话完成对小于70分的成绩的求和了。
最后结果为,与按颜色求和结果相同。
特别说明:与LOOKUP函数相比,这个例子用IF函数更加方便、简单、容易理解。
演示动画如下:
总结:
1、复制表格的标题行和标题列;
2、在数据区域最左上角的单元格中输入公式“=IFERROR(LOOKUP(1,0/(B),B3),"")”并填充其他单元格;
3、输入公式“=SUM(M3:Q9)”求和。
今天的内容就分享到这里,欢迎大家与我一起讨论Excel相关知识,喜欢就点