按照各自部门,将姓名合并到一个单元格

如下图,需要把AB列的数据,按照不同的部门汇总出对应的人员名单。

接下来,怎么以Excel 2016为例,介绍一种快捷简便的方法:

首先在【开发工具】选项卡下,COM加载项,勾选power Pivot,这样就会看的power Pivot的选项卡了。

接下来,在power Pivot选项卡下添加数据模型:

在power Pivot选项卡下单击【度量值】→【新建度量值】。

使用的公式为:

=CONCATENATEX('表1','表1'[姓名],'、')

即:

=CONCATENATEX(要处理的数据表名,数据表的字段名,间隔符号)

换成普通话,意思就是:要连接哪张表里的哪个字段下的内容,用什么分隔符连接。

好了,第一步的热身工作完成了,接下来单击数据区域中的任一单元格,插入数据透视表,注意勾选【将此数据添加到数据模型】。

在数据透视表字段列表中调整字段位置,删除数据透视表的总计行,OK。

如果你使用的是Excel 2019或者Office 365,还可以使用内置函数来完成:

第一步,复制B列的学校名称,粘贴到右侧的空白列里。

然后在【数据】选项卡下单击【删除重复值】按钮,在弹出的对话框中单击【确定】按钮,来获取不重复的学校名单:

第二步:

在E2单元格输入数组公式,按SHift+ctrl+回车

=TEXTJOIN(',',1,IF(B$2:B$71=D2,A$2:A$71,''))

TEXTJOIN函数的用法是:

TEXTJOIN(间隔符号,用数字1或0来指定是不是忽略空文本,要合并的单元格区域或者内存数组)

IF(B$2:B$71=D2,A$2:A$71,'')  这部分内容,是说如果B列等于D2的学校名称,就返回对应的姓名,否则返回空文本。

得到一个内存数组结果:

{'陆艳菲';'';'';'';……;'徐美明';'';'金宝增';'';'';'';''}

最后再使用TEXTJOIN函数,以逗号','为间隔,忽略空文本,来合并这个内存数组,最终得到需要的结果。

除此之外,还可以使用Excel 2016及以上版本中的Power Query功能中的分组来进行合并,你知道怎么操作吗?

好了,今天咱们的内容就是这些吧,祝各位小伙伴一天好心情!

图文制作:祝洪忠

(0)

相关推荐