一:模糊匹配用法 这个是模糊匹配的典型应用案例,即某个数字区间返回一个固定的值。 重温一下如果用VLOOKUP函数实现: =VLOOKUP(C2,$F$2:$G$4,2,1) 找什么,在哪里找,返回第几列,最后一个值尤为重要(是1) 那如果使用LOOKUP函数如何实现呢? 方法一: 公式:=LOOKUP(C2,F1:G4) 这种使用方法是数组形式,Lookup第一个参数是要查找的内容。 第二个参数是一个区域(这个区域是行数大于等于列数),且这个区域的第一列必须从小到大排序。 这个函数的返回值就是矩形区域的最后一列。 如果第二个参数的区域列数大于行数,则和HLOOKUP的模糊匹配相同,在这里不做展开。 方法二: 公式:=LOOKUP(C2,F1:F4,G1:G4) 这种使用方法是向量形式,个人比较喜欢这种方法,接三个参数,第一个参数是找什么;第二个参数是以什么作为对比,这个必须是升序进行排列;第三个是返回什么。 小编观点:其实LOOKUP函数在模糊匹配上数组用法和VLOOKUP的模糊匹配没有什么差异,第二个向量用法会比VLOOKUP灵活一些,实战用处只大了那么一点点点。 二:精确匹配 案例要求使用名字查找对应的评分。 案例实现: 公式:=LOOKUP(1,0/(B2:B7=E2),C2:C7) 这个方法是比较巧妙的,所以需要各位朋友睁大双眼观看哈! 大家我们输入第一个参数找什么呢? 输入的是1,在哪里找呢,是用0除以姓名那一列等于中岛美嘉,第三个参数是填写返回什么值,我们把评分的那一列选中。 以上是函数的基本编写原则,接下来和大家分享函数的拆分原则和思路。 我们从内向外拆分,先拆分B2:B7=E2,这个是姓名那一列等于中岛美嘉,有前面VLOOKUP排错,大家也知道两个单元格相等判断,返回的是真假,这样子除了第三行数据外,其它的返回值都是false,只有中岛美嘉返回的是true。在Excel中,True等同于1,False等同于0。 用0除以True和False的数组,则0除以1的时候还是返回0,但是正常分母是不可以为0的,所以其他值返回的都是错误。 回归LOOKUP大函数,找什么呢,找1 在哪里找呢,发现第二个参数是个数组,除了数组中的第三位是0,其它都是报错的。 之前分享过,LOOKUP在这里就是模糊匹配用法,所以电脑只能认为第三行数据是电脑找到的,则返回了评分数组中的第三位,也就是5。 三:特殊用法 LOOKUP当然也有自己比较独特的应用,在这里分享一个案例: 返回最后一个文本或数值。 比如有些表格是有汇总求值的,我们想获得这个表的最后一行数据,怎么用LOOKUP函数实现呢? 公式:=LOOKUP('座座座',A:A,C:C) 这个是模糊匹配用法的变种,根据模糊匹配原则,第一个参数是查找什么,第二个参数是以什么作为对比,第三个参数是返回什么。 然后我讲第一个参数设置为一个足够大的文本,文本如何比对大小呢?是根据汉字转化为拼音进行对比,如座(zuo)的Z比汇(hui)的H大,所以座在汉字中是相对比较大的文字。 因为第一个参数“座座座”都比A列中的大,所以电脑只能返回最后一列数据对应C列的值了。 本文由公众号 阿凯的Excel 友情推荐
|
|
来自: a83vylzxn5 > 《函数》