启明办公

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 88|回复: 0

Excel多个内容如何合并到一个单元格内?TEXTJOIN与超级 ...

[复制链接]

1

主题

4

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2022-12-30 18:16:05 | 显示全部楼层 |阅读模式
读者朋友在工作中遇到的一个小问题,Excel多个文本内容如何合并到同一个单元格内?像下图这样:


第一反应是使用数据透视表,但是数据透视表的值区域不支持文本展示,那么如何实现这一功能呢?
TEXTJOIN函数

F2单元格内输入公式之后(注意其中的相对引用与绝对引用):
=TEXTJOIN("
",1,IF(($B$2:$B$27=F$1)*($A$2:$A$27=$E2),$C$2:$C$27,""))

启用单元格自动换行功能,即可完成需求表的制作。
函数解释:
TEXTJOIN的第一个参数是文本分隔符,这里我们要用到的分隔符是换行符,同时按下Alt+Enter键完成换行符的输入;
TEXTJOIN的第二个参数表示:是否忽略空单元格,输入1代表TRUE,即忽略空单元格;
TEXTJOIN的第三个参数是需要连接的文本字符串或区域,这里我们用IF函数根据不同条件,动态返回不同的条件区域。


这里的的公式需要向下填充,所以将“奖项”单元格【F$1】行绝对引用,如果不绝对引用的话,公式在下拉的时候会变成F2、F3...
列F不固定是因为在公式向右拖动的时候,可以变成G1、H1,分别对应“二等奖”与“三等奖”;
同理,公式需要向右填充,“班级”单元格【$E2】需要列绝对引用,不然右拖动公式时,会变成F2、G2...
超级透视表

如果你的Excel版本在2019以下,没有textjoin函数,那可以使用超级透视表功能。
超级透视表叫Power Pivot,是Excel中的一个建模工具,在2016版本中内置到了Excel中,如果你的页面没有它的话,你可以通过以下方式调出:
【开发工具】—【COM 加载项】,勾选“Microsoft Power Pivot for Excel”,点击确定,就会出现 Power Pivot 功能区。



下面我们就用超级表制作出需求的表格。
首先Ctrl+A全选数据源,点击【Power Pivot】—【添加到数据模型】。



接着会进入到Power Pivot界面,在这里直接点击【数据透视表】,插入一个数据透视表。


接着我们可以直接把“班级”拖动到行区域,把“奖项”拖动到列区域,完成这一步之后,透视表就先晾在一边啦。


接着新建一个度量值,点击【Power Pivot】—【度量值】—【新建度量值】,在公式中输入:=Concatenatex('表1',[学生],""),注意其中的换行符


Concatenatex函数是DAX函数(数据分析表达式)的一种,它的功能主要是将文本以特定分隔符合并到一起,有点类似于上面的TEXTJOIN函数,只不过它不能在Excel普通场景里运用;
“表1”就是我们的数据源。
接着回到透视表,就会出现刚才新建的字段,我们把它拖动到【值区域】,接着取消行列合计、启用单元格自动换行,搞定~
动图展示如下:


这样我们就完成了需求表格的制作。
当然,我们也可以用其它分隔符,将字符串连接,比如下图中常见的样式:


Power Pivot的功能远不在于此,它提供了丰富的建模工具,多表联动,处理的数量级可以突破百万限制,还没用过的小伙伴,快去尝试下吧~
小结

以上就是今天分享的内容,希望对你有所帮助,我们 下期再见~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|启明办公

Copyright © 2001-2013 Comsenz Inc.Template by Comsenz Inc.All Rights Reserved.

Powered by Discuz!X3.4

快速回复 返回顶部 返回列表