excel一行拆分多行_Excel文本一行多行转换,新函数新工具这样做!

在数据清洗和整理中,常需进行Excel文本多行变一行、一行变多行操作。多行变一行可使用FILTER函数、TEXTJOIN函数,还能用Power Query工具;一行变多行适合用PQ编辑器里的分列到行功能,文中介绍了各方法适用版本及具体操作。
营长说

在数据清洗和整理中,总会遇到形形色色的要求。今天营长分享的是一对相反的操作,将Excel文本多行变一行,一行变多行。会用到Excel最新的TEXTJOINFILTER函数,也会用到Excel强大的后台Power Query编辑器。

1

多行变一行

今天的案例来自上周企业内训的培训部门负责人,想把左侧的每人多行列表变成右侧的每人一行,这样每位员工登记的设备就一目了然。

38acdb4c00501f611e4a6e37f51e7ff2.png

方法一

FILTER函数(适合365版本)

FILTER函数是Office 365版本新增的动态筛选函数,具体可以参考

Excel 365动态数组函数FILTER,让你轻松实现“一对多,多对多”查询

这里用到转置函数TRANSPOSE和FILTER的组合,结果在不同的单元格中。

ae8cfa6af1d75d3af734999642d2a380.png

在E2单元格中输入公式

=TRANSPOSE(FILTER($B$2:$B$8,$A$2:$A$8=D2))

后面单元格均会自动填充结果,向下拖拽公式即可。

方法二

TEXTJOIN函数(适合2019和365版本)

TEXTJOIN函数可以把多个区域的文本,用特定符号连接起来。具体可以参考

Excel文本连接只会用 & 符号, 早就Out了

案例 | Excel九宫格矩阵评价统计,离不开这些函数

这里用TEXTJOIN和IF函数,根据姓名匹配各自的设备型号,用“、”连接放在一个单元格中。

a16f4bcbb6277f18208bece11ac6766f.png

在E2单元格中输入公式:

=TEXTJOIN("、",,IF($A$2:$A$8=D2,$B$2:$B$8,""))

方法三

用Power Query工具(适合2016及以上版本)

从2016版本开始,Excel自带强大的数据查询工具Power Query,2010和2013版本都需要安装插件。

PQ插件官方下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=39379如果是Excel 2003/07版本,友情拥抱,很抱歉,朋友,现在是公元2020年了,你是不是应该换个Excel版本了呢?回到本例,如下图将表格导入到PQ编辑器中,本文用365版本演示。

15e7bf1a95f4fd6ee45db6bd2615dc88.png

按姓名进行分组

9cdc225b82ed7a348eeaddc8239a45c1.png

新列名为”设备“,操作选择”所有行“。

9d00b425dd50bda5904d09d85fec547f.png

只需要将它自动生成的公式编辑栏里的公式内容稍做下修改即可搞定多行变单行的操作。

1af9513a094490b72649735163357474.png

each Text.Combine(_[登记设备],",")

Text.Combine()是字符合并函数,根据第二个参数给出的分隔符,将前面的内容进行合并.关于函数的介绍可以参考官方介绍。https://docs.microsoft.com/zh-cn/powerquery-m/text-combine

235087ebc51b775ef2f1a9c08a9dd416.png

最后”关闭并上载“即可。

e227ec279c75f320ccd3c1a9836dc9d9.png

2

一行变多行

也会遇到一行数据,如何快速按姓名变成多行呢?如下图。

e1f19ea9ecf5b0709b39ebab08088643.png

最方便快捷的方法还是用PQ编辑器里的分列到行功能,适合2019和365版本。

先将数据导入。

f0c3dcfe8b4b210084a6a552e0bd5fb4.png

【拆分列】--【按分隔符】

ec3a3bd098abea6dbaeade636276a1da.png

输入自定义符号”、“,拆分为”“,这一步很关键。

302b7658016af6ad12ba18dc40a74130.png

结果立马呈现,就可以上载到Excel工作簿中。

22fca6bc5c8f7bbea30c365995e070d4.png

好,今天的教程就是这些。

图书推荐

▼▼▼

职场办公图书每满100减50优惠开始了3810fb71335382988579d17c9d8edcef.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值