网站首页 > 技术文章 正文
高考今天结束,预祝考生们都能取得理想的成绩~
今天继续分享实用干货,涉及到透视表分组、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列,从上到下查找,当查找到第一个比它大的值时,停止查找,返回停止查找的上一个值;
先查找14000,在E列从上到下查找,当找到30000的时候,30000大于14000,停止查找,返回30000上面的数字10000,结合vlookup函数参数三(等于3),返回匹配区域的第三列,所以函数最终返回G2单元格,3%,返回正确结果。
前提是一定要对匹配区域的首列进行升序。
也就是说E列需要升序操作,我们来看个反例。
下图中E列处于无序状态,正常状态下赵云的业绩是34000,返回的提成点应该是5%,但最终结果却是3%。
这是因为模糊匹配从上向下查找,查找到50000的时候,50000大于34000,返回50000上面的一个值10000,再结合参数三,返回3%。
所以,一定要记得将E列升序操作,Vlookup函数模糊匹配才会返回正确的结果!
小结
Excel数据透视表分组+Vlookup函数模糊匹配,分享给大家,希望对你有所帮助。
- 上一篇: 指数函数和对数函数,不要再傻傻分不清楚
- 下一篇: 浅谈“模糊理论”
猜你喜欢
- 2024-12-06 高等数学(1)——函数的定义,有界性和单调性
- 2024-12-06 没想到吧,Excel模糊查找还可以用这5个方法
- 2024-12-06 算季度的八种方法,你会哪个?
- 2024-12-06 VLOOKUP模糊查询?看完这篇文章那都不是事
- 2024-12-06 《模糊多目标决策理论、方法及其应用研究》 模糊数综述
- 2024-12-06 这7个常见的Excel小问题,你知道如何解决吗?
- 2024-12-06 大众情人VLOOKUP函数详解
- 2024-12-06 vlookup配合通配符,模糊查询也能很精确,再也不用筛选了
- 2024-12-06 如果你连这些“通配符”都不会,就不要抱怨工资低了
- 2024-12-06 LOOKUP公式中1和0的含义,我用1500字给大家讲明白了
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)