告别加班!20个Excel函数组合拳,搞定90%的数据分析
昨晚十一点,我正准备关电脑睡觉,微信突然响了。
是前同事小美发来的消息:一张Excel截图,满屏的公式和数据,配文是“救救我”。
她说自己从下午六点开始做月度报表,眼睛都快瞎了,才做完三分之一。领导还在群里艾特她,问什么时候能交。
这种场景,是不是特别熟悉?
明明是同样的数据,别人两小时搞定,你折腾大半天;别人准点下班追剧健身,你对着电脑啃外卖;月初别人已经开始做分析,你还在复制粘贴整理数据。
真的,别再手动一个个算了。
我整理了一套压箱底的Excel函数组合拳,都是实战中反复验证过的。不需要你会VBA,不用学Python,只要会用这些组合,工作效率直接翻倍。
01 查找匹配类 #
VLOOKUP+MATCH:动态匹配列
别再傻傻数第几列了。
Plain Text
=VLOOKUP(A2, Sheet2!$A$1:$Z$100, MATCH(B1, Sheet2!$A$1:$Z$1, 0), 0)
左边数据表,右边数据表,随便你怎么调整列的顺序,公式自动识别。
INDEX+MATCH:左右上下随便查
VLOOKUP只能从左往右查,这个组合没有限制。
Plain Text
=INDEX(返回区域, MATCH(查找值, 查找列, 0), MATCH(查找值, 查找行, 0))
双向查找,一秒定位。
XLOOKUP:Office 365用户的福音
一个函数搞定所有查找需求。
Plain Text
=XLOOKUP(查找值, 查找数组, 返回数组, ,0,1)
找不到返回啥?你说了算。
02 数据清洗类 #
TRIM+CLEAN:一秒清空垃圾
从系统导出来的数据,总带着各种空格和乱码。
Plain Text
=TRIM(CLEAN(A2))
先清除非打印字符,再清除多余空格,数据整整齐齐。
TEXTJOIN+IF:合并同类项
按条件合并多个单元格,再也不用一个个复制粘贴。
Plain Text
=TEXTJOIN(",", TRUE, IF(条件区域=条件, 合并区域, ""))
记得按Ctrl+Shift+Enter结束。
LEFT/RIGHT/MID+LEN:智能提取
身份证号提取出生日期、地址提取城市、文本中抽数字…
Plain Text
=MID(A2, 7, 8) '身份证提取生日=LEFT(A2, LEN(A2)-1) '去掉最后一个字符
03 统计汇总类 #
SUMPRODUCT:多条件统计王者
比COUNTIFS和SUMIFS更灵活,还能加权计算。
Plain Text
=SUMPRODUCT((条件1区域=条件1)*(条件2区域=条件2)*求和区域)
SUMIFS+OFFSET:动态区域汇总
表格结构变化?无所谓。
Plain Text
=SUMIFS(OFFSET(汇总起始单元格,0,0,COUNTA(列区域),1), 条件区域, 条件)
FREQUENCY:一键分段统计
年龄分段、销售额分段,这个函数比手动数快一百倍。
Plain Text
=FREQUENCY(数据区域, 分段点)
选中目标区域,输入公式,Ctrl+Shift+Enter搞定。
04 日期处理类 #
DATEDIF:计算工龄/账龄
Excel隐藏函数,直接输就能用。
Plain Text
=DATEDIF(开始日期, 结束日期, "y") '年=DATEDIF(开始日期, 结束日期, "m") '月=DATEDIF(开始日期, 结束日期, "d") '天
EOMONTH+DAY:判断月底
做对账必用。
Plain Text
=DAY(EOMONTH(A2,0))=DAY(A2)
TRUE就是月底最后一天。
WEEKDAY+TEXT:中文星期几
Plain Text
=TEXT(A2, "aaaa")
显示出来就是“星期一”“星期二”…
05 逻辑判断类 #
IF+AND/OR:多条件判断
Plain Text
=IF(AND(A2>0, B2<100), "符合", "不符合")=IF(OR(A2="是", B2="是"), "通过", "不通过")
IFERROR+VLOOKUP:查找结果美化
找不到就不显示错误,看着舒服多了。
Plain Text
=IFERROR(VLOOKUP(查找值, 表, 列, 0), "未找到")
CHOOSE+MATCH:智能评级
Plain Text
=CHOOSE(MATCH(分数, {0,60,70,80,90}, 1), "E","D","C","B","A")
比嵌套IF好写一万倍。
06 进阶组合 #
INDIRECT+ADDRESS:跨表引用
做年度汇总表的神器。
Plain Text
=INDIRECT(ADDRESS(行, 列, , , 工作表名))
AGGREGATE:忽略错误值计算
有错误值也能正常算。
Plain Text
=AGGREGATE(1, 6, 数据区域) '平均值,忽略错误=AGGREGATE(9, 6, 数据区域) '求和,忽略错误
SUBTOTAL:只统计筛选后的数据
用了筛选,还在用SUM?
Plain Text
=SUBTOTAL(109, 数据区域)
109代表求和,只统计可见行。
RANK+COUNTIF:不跳号排名
普通排名如果有并列,后面会跳号。这个不跳。
Plain Text
=RANK(A2, $A$2:$A$100)+COUNTIF($A$2:A2, A2)-1
FILTER+UNIQUE:自动提取不重复值
Office 365用户福利。
Plain Text
=UNIQUE(FILTER(数据区域, 条件区域=条件))
HYPERLINK:一键跳转
建立目录的神器。
Plain Text
=HYPERLINK("#'"&A2&"'!A1", "跳转")
这些组合,我用了整整五年。
从一个数据整理两小时,到现在十分钟解决战斗;从天天被领导催报表,到准点下班还有人问“这么早走啊”。
说实话,Excel就是个工具,掌握方法就能省下大把时间。
剩下的时间,你可以用来陪家人、追剧、健身,或者学点更有价值的东西。
别让自己在重复劳动里消耗掉。
如果你觉得有用,点个赞让更多朋友看到。有想学的Excel技巧,欢迎留言告诉我,下期继续分享。
最后说一句:收藏了记得看,别让它们在你的收藏夹里吃灰。
夜雨聆风
