在群里,扔了一个炸弹:要求会根据左侧系统导出的不规范数据,制作右侧的汇总表:

警告:不允许分列提取部门和项目!不允许在A列填充编码!不允许使用PQ做!
咣当!
下面是一个比较复杂的公式,仅仅是锻炼函数的综合应用能力,以及如何从表格中挖掘逻辑思路:
=IFERROR(VLOOKUP("*"&$F3,OFFSET($B$1,MATCH(G$2,$B:$B,0),,IFERROR(MATCH("*",INDIRECT("A"&MATCH(G$2,$B:$B,0)+1&":A1000"),0),1000)-1,2),2,0),"")
这个公式的核心在两点:
(1)当match出指定项目的位置后,要用indirect构建一个往下错一行的动态区域,以便match出下一个项目的位置。
(2)由于这个indirect出的区域是有空单元格和非空单元格(就是下一个项目名称)组成,因此match里使用星号(*)来匹配非空值,就得到下一个项目的位置了。
使用的函数:
match(最核心)
indirect(必不可少)
vlookup(太简单)
iferror(个别问题处理)
offset(太妖艳)
慢慢理解吧。
找时间,把这个例子的各种变形及各种解决思路,系统的介绍下。

Excel学习要系统,最忌讳碎片化!
Excel学习要日积月累,逐步提高!
本人开发系列学习课程和专题应用课程视频,讲陆续上传到千聊直播间,欢迎大家前去观看某个视频(单独付费),或者加入会员,观看所有视频:


