他给我发了一张图,图片大概如下所示。左边是数据,分成5个组,右边是把同一组里面的多个姓名用顿号拼接在一起后显示的终极结果。
下面一起看看用函数怎么实现这个问题。详细操作步骤如下:
1、首先,在E列添加一列“分隔符”赞助列,用于名字与名字之间的分隔标识。这里我在单元格区域E2:E37输入一个顿号“、”。
2、选中F2单元格 -- 在编辑栏中输入公式“=IF(C2=C3,\"大众\公众,PHONETIC(INDIRECT(\"大众D\"大众&MATCH(C2,$C$1:$C$37,0)):E2))”-- 按回车键回车,可以看到单元格还是空的。
3、选中F2单元格 -- 将鼠标光标移到右下角涌现“十”字符号时往下拖动至F37单元格(Excel版本2010以年夜将鼠标光标移到选中单元格右下角后可直接按快捷键“Ctrl+E”) -- 可以看到F8、F15、F22、F32、F37单元格里面已经有了内容,仔细看可以创造里面的内容便是同一组几个姓名用顿号拼接在一起的内容。
4、选中F列 -- 点击菜单栏的“数据”选项卡 -- 在“排序和筛选”工具组中点击“筛选”。
5、可以看到F1单元格右下角多了一个下拉三角 -- 我们点击它,取消勾选“空缺”前面的复选框 -- 点击“确定”按钮。
6、可以看到空缺单元格被我们隐蔽了,末了的效果便是我们想要的结果,如下图所示。
7、动图演示如下。
8、公式解析:
(1)MATCH(C2,$C$1:$C$37,0):
MATCH函数的浸染是:用于在指定区域内按指定办法查询与指定内容所匹配的单元格第一次涌现的位置。F8单元格中公式MATCH(A2,$A$1:A37,0)返回的结果为“2”,由于姓名为“张小龙”第一次涌现的位置为B2单元格,位置是2。
“”
(2)INDIRECT(\公众D\"大众&MATCH(C2,$C$1:$C$37,0)):E2:
INDIRECT函数的浸染是:返回对文本字符串的引用。该公式通过MATCH函数查找到的单元格内容第一次涌现的位置与E列当前行所在的单元格内容作为结尾用&符号连接成一个新的字符串,再通过INDIRECT函数即可引用该区域里面的值。该公式返回的结果是:{\公众张小龙\"大众,\"大众、\"大众;\"大众王子娇\公众,\公众、\"大众;\公众李明浩\"大众,\"大众、\公众;\"大众黄思思\"大众,\"大众、\"大众;\"大众蔡丹丹\"大众,\公众、\公众;\"大众贾庆林\"大众,\"大众、\"大众;\公众王杰\"大众,\"大众、\公众}。
(3)、PHONETIC(INDIRECT(\公众D\公众&MATCH(C2,$C$1:$C$37,0)):E2):
PHONETIC函数的浸染是:将文本连接起来,连接的顺序为先行后列,从左向右,由上到下。该公式将第2步返回的结果连接起来,得到新的结果:\"大众张小龙、王子娇、李明浩、黄思思、蔡丹丹、贾庆林、王杰、\"大众。
(4)、=IF(C2=C3,\"大众\"大众,PHONETIC(INDIRECT(\"大众D\"大众&MATCH(C2,$C$1:$C$37,0)):E2)):
由第3步得到的结果可知,该公式即是:=IF(C8=C9,\公众\公众,\公众张小龙、王子娇、李明浩、黄思思、蔡丹丹、贾庆林、王杰、\"大众)。通过IF函数判断下一行单元格的内容与当前单元格的内容是否相等,如果相等,返回空值,如果不相等,就返回拼接的内容。以是,末了的结果只有F8、F15、F22、F32、F37这几个单元格是有内容的。
(5)筛选。
末了通过筛选将空缺的值不显示,就得到我们想要的结果。如下图所示。
想要这份演示文件,可以发送私信004即可获取下载链接。
以上便是我们本期的详细教程,如有不懂之处,可在评论区留言!
更多常用Excel函数组合,常用小技巧,请持续关注本头条号!
您若喜好本文,下方点个讴歌,关注下,我便受到鼓励与支持,感激您!