部分字段相同模糊匹配 vlookup模糊匹配


高考今天结束,预祝考生们都能取得理想的成绩~
今天继续分享实用干货,涉及到透视表分组、Vlookup函数模糊匹配 。
工作当中经常遇到需要将数据分组的情况,我们来看两个经典案例 。
案例需求
案例一,如何统计出每个分数区间的人数?
思路是先判断每个分数属于哪个区间,再统计每个区间的人数,如果用IF函数多层嵌套的话,区间太多,公式太长,容易出错,并不推荐 。
案例二,如何确定每位员工的绩效提成点?
思路同上,先判断每位员工的业绩属于提成规则表中的哪个区间,再返回对应的提成点 。
这类判断数据分组的需求,我们首先想到的是IF函数:
=IF(业绩>90000,12%,IF(业绩>8000,11%,IF(业绩>7000,10%,IF(....))))
案例二的问题,至少得嵌套6个IF函数(累死人),繁琐且容易出错,在区间多的情况下,基本不考虑IF函数 。
今天我们介绍两个快速简单的方法,实现数据分组的问题 。
数据透视表
数据透视表的功能不可谓不强大,那么数据透视表如何实现分组?
这里我们以案例1为基础 。
首先选中数据源,插入数据透视表,将字段“分数”拖动到行区域,字段“姓名”拖动到值区域 。
这样,就可以统计数,每个分数,有多少个学生 。
接着右键分组列,选择【组合】,Excel会默认给出数字范围的最小/最大值;
这里我们根据需求调整最大最小值与步长,步长10,表示分数每隔10分为一组 。
点击【确定】之后,数据分组完成 。
从这里可以看出,数据透视表比较适合等步长数据的分组,也就是说透视表并不适合非等步长的分组;
比如将成绩区间分到60-80,80-90,90-100,第一个分数区间60-80的步长是20,后面两个分数区间的步长是10,前后步长不一致,透视表无法实现 。
不等步长的问题,我们可以利用第二种方法实现 。
Vlookup函数模糊匹配
Vlookup函数在Excel中的地位,堪比数据透视表,数据匹配神器 。
但在日常工作中,我们基本只用到它的精准匹配模式,也就是最后一个参数是FALSE(0);
它还有种模式,模糊匹配,最后一个参数是TRUE(1) 。
我们以案例二为演示基础 。
首先利用快速填充CTRL E,提取出提成规则表中的数字,记得放在列“提成点”的前面 。
接着,在C2单元格内输入公式:
=VLOOKUP(B2,E:G,3,1)
公式下拉,完成提成点的匹配 。
这是什么原理呢?
vlookup函数的第四个参数等于TRUE(0)的时候,表示模糊匹配 。
当在查找B2单元格(14000)的时候,Vlookup会从匹配区域的首列,也就是E列,从上到下查找,当查找到第一个比它大的值时,停止查找,返回停止查找的上一个值;

猜你喜欢