【动态数组】函数实战案例之M行N列数据转一列

张俊
张俊

WPS函数专家

要想下班早,表格必须用的好!

大家好,我是张俊。

场景

大家好,我是张俊,自动上次分享【动态数组函数实战案例】一列数据转M行N列,又有宝子们咨询,如何将多行多列的数据转置为一列数据,如下图所示:

如果是我们一个个手工粘贴,那可得花不少时间,如果数据更多呢?比如1000个、10000呢?那不得粘贴到地牢天荒?如果你也经常遇到这样的问题,那就不妨看过来吧?学会一个函数技巧,少走很多弯路。

  1. 所需函数

1.1 TEXTJOIN函数

TEXTJOIN函数简单来说,就是将单元格区域(参数3及之后参数)单元格区域的字符串根据指定字符(参数1)拼接,如遇空白单元格可以考虑是否忽略(参数2)。关于INDEX函数具体用法,后期会专门出教程详细说明,大家期待一下吧?

就是生成指定行指定列的序列,我们可以利用这个函数直接生成20行5列的1到100的数据序列。

关于SEQUENCE函数基本用法和进阶用法可以参考:【动态数组】以动态数组视角学习SEQUENCE函数基本用法【动态数组】以动态数组视角学习SEQUENCE函数进阶用法,可以帮助大家快速的理解和学会SEQUENCE函数。

1.2 TEXTSPLIT函数

TEXTSPLIT函数简单来说,就是将一串字符根据对应的分隔符(参数2,参数3)根据按行或按列拆分成表格即可。

关于TEXTSPLIT函数基本用法和进阶用法可以参考:【动态数组】以动态数组视角学习TEXTSPLIT函数基本用法【动态数组】以动态数组视角学习TEXTSPLIT函数进阶用法,可以帮助大家快速的理解和学会TEXTSPLIT函数,关于更多TEXTSPLIT函数应用案例,可以前往我的个人主页https://home.wps.cn/user/51492【帖子合集】个人往期帖子合集来了!详细了解。

1.3 TRANSPOSE函数

TRANSPOSE函数简单来说,就是将M行N列数据转换为N行M列数据。关于TRANSPOSE函数具体用法,后期也会专门出教程详细说明,大家期待一下吧?

  1. 实现效果

根据需求描述,具体公式:

=TEXTSPLIT(TEXTJOIN(",",,A1:E20),,",")

2.1合并字符串

合并字符串公式如下:

=TEXTJOIN(",",,A1:E20)

具体操作步骤如下图所示:

公式解析:

通过TEXTJOIN函数根据字符串","将A1:E20单元格的数据逐行拼接为一个字符串,各单元格值之间用","隔开。

💡

在函数录入过程中如何快速选中A1:E20单元格?

1.先选中A1单元格

2.按快捷键Ctrl+Shift+→,选中A1:E1单元格区域

3.再按快捷键Ctrl+Shift+↓,选中A1:E20单元格区域

2.2拆分字符串

拆分字符串公式如下:

=TEXTSPLIT(xx,,",")

具体操作步骤如下图所示:

公式解析:

通过TEXTSPLIT函数将字符串根据分隔符","按列拆分(参数3)成多行1列。

  1. 进阶用法

3.1逐列转化

根据前面的案例,我们可以发现TEXTJOIN函数是逐行合并的,但是目前需求是要逐列合并,怎么办呢?乍一看无从下手,仔细一想,其实可以先通过TRANSPOSE函数对数据区域转置后再次处理就可以了!具体公式如下:

=TEXTSPLIT(TEXTJOIN(",",,TRANSPOSE(A1:E20)),,",")

具体操作步骤如下图所示:

3.2不足整行整列

这时就需要考虑是否需要留空的问题,如果是忽略空白的话,目前的公式就是忽略空白的,主要作用于TEXTJOIN函数的参数2(默认就是忽略空白单元格);如果不想忽略空白单元格,可以修改此参数为0(False)即可,具体公式如下:

=TEXTSPLIT(TEXTJOIN(",",0,TRANSPOSE(A1:E20)),,",")

具体操作步骤如下图所示:

都看到这里了,要记得得点赞❤️❤️❤️和收藏并在评论区评论“我学会了!”,您的点赞❤️❤️❤️、收藏和评论是对我最大的支持!

🚩

练习文件:👉多行多列一列数据转一列👈


个人往期帖子合集:【帖子合集】个人往期帖子合集来了!

你学会了吗?
学会了!
8 (67%)
太难了!
4 (33%)
12人参与 投票已截止
上海
浏览 1486
收藏
10
分享
10 +1
13
+1
全部评论 13
 
幸福春
学习中.............
· 山东省
回复
 
HC.旋
跟着俊哥学函数!
· 江苏省
1
回复
张俊
张俊

WPS函数专家

跟着旋哥学习,本案例这次新函数出来了,看来又可以更新了!
· 上海
回复
 
懒得批爆
懒得批爆

创作者俱乐部成员

单元格中有重复项,如何使列表中重复项只显示一次,其他要求不变
· 四川省
1
回复
张俊
张俊

WPS函数专家

那就再加上去重函数UNIQUE来处理下即可。
· 上海
回复
 
志尧ZhiYao
志尧ZhiYao

创作者俱乐部成员

哈哈 如果碰到员工这样填数据直接扣工资 增加我工作量
· 江西省
1
回复
张俊
张俊

WPS函数专家

哈哈,没毛病,不过现在不景气,还是慎重些,不如让他来社区多多学习帖子内容。
· 上海
回复
 
超逸
跟着大佬学,提高自己!
· 河南省
1
回复
张俊
张俊

WPS函数专家

加油,期待可以在社区与你有更多的沟通和交流。
· 上海
回复
 
刘航
刘航

创作者俱乐部成员

跟着张俊老师走,动态数组统统都不是问题!
· 北京
2
回复
张俊
张俊

WPS函数专家

航哥很厉害,需要多多向航哥学习。
· 上海
回复
 
尹俊超
尹俊超

创作者俱乐部成员

跟着俊哥学函数
· 河南省
2
回复
张俊
张俊

WPS函数专家

跟着超哥不迷路,超哥可以带我上高速。
· 上海
回复