这是excel100天学习班的自定义内容,今天就不废话了,直接进入主题。
vlookup是干什么用的?
这是一张vlookup函数查找的示意图,很久以前做的,多看几次就能看懂。

但是vlookup函数有很多限制,只能根据首列查找、只能查找一个对应值等等。
1.根据译音反向查找潮州话。

针对这种情况,函数高手会借助if({1,0})构成一个新区域,然后再查找,但对于小白而言,那简直就是天书。换一个思维海阔天空,既然vlookup函数是根据首列查找的,我们可以将数据略作改变。

这样就只借助最简单的vlookup函数就可以搞定。
=vlookup(e2,a:b,2,0)
还记得小时候做数学题,老师经常提示这道题可以用辅助线来完成。其实,长大后,数学题就变成了excel题,而辅助线就变成了辅助列。
2.将查找到的内容,放在一个单元格。

如果你是一个高手,可以自定义一个函数,那这种问题不叫问题。

公式是不是超级简单,但是你知道自定义函数的代码其实并不简单,作为小白不知道看到代码会不会晕掉。
function excel不加班(rng as range)
dim i%
for i =2to cells(unt,1).end(xlup).row
if rng =cells(i,1)then
hb =hb &iif(hb ="","","、")&cells(i,2)
end if
next
excel不加班=hb
end function
回到辅助列法来,在c2输入公式,并下拉填充。
=b2&if(untif(a3:a13,a2),"、"&vlookup(a2,a3:c13,3,0),"")

不要用怀疑的眼光看这条公式,这里不需要绝对引用。惯性思维有的时候也是错的,起始单元格跟结束单元格也跟平常不一样。
01untif(a3:a13,a2)判断a列下一行是否存在跟a2相同的姓名,如果存在就执行"、"&vlookup(a2,a3:c13,3,0),否则返回空值。
02"、"&vlookup(a2,a3:c13,3,0)从a列下一行起,精确查找a2对应c列的值,用顿号隔开。
03b2与if得到的计算结果合并,将记录连接到辅助列中。
综合起来,辅助列的作用就是将查找到的所有内容合并起来,并显示在第一个学员对应的位置。

最后用vlookup对新的区域进行查找即可。
=vlookup(e2,a:c,3,0)
凡事皆有可能,只要你用心去想!
作者:卢子,清华畅销书作者,《excel效率手册早做完,不加班》系列丛书创始人,个人公众号:excel不加班(id:excelbujiaban)

延伸阅读:
我们是谁?财务!
发票开具有新规,这些细节要分清!
拒绝加班!18个工作中必会的Excel函数公式