没有Textjoin函数,如何解决提取数据的问题?
作者:老菜鸟来源:部落窝教育发布时间:2022-01-05 17:01:56点击:7816
编按:
Textjoin函数存在于较高版本的Excel和WPS中。很多小伙伴还在使用Excel2007,即便是Excel2016,也没有这个函数。今天就来给大家讲一讲,没有TEXTjoin函数该如何按个数提取数据?
最近好几次看到有人在群里求助相同的一类问题,就是想把下图中左边的两列变成右边的样子。
要说解决这个问题的话,就是一个公式的事情。
=TEXTJOIN("、",1,IF($A$2:$A$19=D2,$B$2:$B$19,""))
公式很简单,但是TEXTJOIN函数只存在于较高版本的Excel和WPS中。
今天就来给大家讲讲如果没有这个函数,遇到这种情况该怎么办?
方法1:
在姓名后面输入需要的分隔符,注意,每一组的最后一个人后面空着。
然后使用公式=PHONETIC(OFFSET($B$1,MATCH(E2,A:A,)-1,,COUNTIF(A:A,E2),2))也可以实现需要的结果。
这个公式里用到的函数没有版本限制。
PHONETIC可以合并给定区域中的文本型数据,这里的姓名和分隔符都是文本型得到,因此可以使用这个函数。
OFFSET的作用是提供需要合并的范围,使用MATCH确定开始位置,使用COUNTIF确定需要合并的行数。
这个公式整体来说除了看上去比较高大上之外,实用性一般,用来学习OFFSET函数倒是不错的案例。
方法2:
还是需要辅助列,公式为=IF(A2=A3,B2&"、"&C3,B2)
这个辅助列用到的是一个最基础的函数:IF。
需要注意的是公式中的三个参数,条件为A2=A3,翻译过来就是判断是否为同一组。
如果是同一组的话,就得到B2&"、"&C3,这里用到了公式所在单元格下面的一个C3,也是整个公式的灵魂。
如果不是同一组的话,得到B2。
辅助列的这个公式一定要好好弄明白。
最终的结果使用的也是一个非常基础的公式:=VLOOKUP(E2,A:C,3,0)
假如你的Excel没有TEXTJOIN函数的话,那我推荐IF+VLOOKUP的这个方法,简单实用,你肯定能学会。
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和《Excel极速贯通班》直播课全心为你!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
将excel中的数据按照指定数量进行重复,非得用VBA才能实现吗?
Power Query的数据替换技巧比Excel函数更万能!
版权申明:
本文作者老菜鸟;同时部落窝教育享有专有使用权。若需转载请联系部落窝教育。