【回复贴】 G列的一组数据,变成H列这样

懒得批爆

创作者俱乐部成员

提问地址:https://bbs.wps.cn/topic/21951

💡

使用公式=TEXTJOIN(",",TRUE,SORT(TEXTSPLIT(G1,","),,,TRUE))即可

函数讲解:

  • TEXTSPLIT(G1,",")是将原单元格数据以","为依据拆分为数组

  • SORT(TEXTSPLIT(G1,","),,,TRUE)SORT为排序函数,加上TRUE参数为按列顺序排序

  • TEXTJOIN(",",TRUE,SORT(TEXTSPLIT(G1,","),,,TRUE))最后用TEXTJOIN函数用","将数组连接起来。

使用效果见下图:


👌

谢谢新路老师的提醒

将公式修改为=TEXTJOIN("、",TRUE,SORT(--TEXTSPLIT(J2,"、"),,,TRUE))

解释:--是为了将文本型数字转换为数值型数字,方便排序

不然,如果位数增加后就有可能出现

最右侧这种奇怪的排序

说明下公式中各参数的意思,方便直接修改套用

=TEXTJOIN("、",TRUE,SORT(--TEXTSPLIT(J2,"、"),,,TRUE))

"、"代表原单元格数字的连接符号

J2代表原单元格

"、"代表新生成的数字连接符号

四川省
浏览 571
收藏
6
分享
6 +1
9
+1
全部评论 9
 
wps新路

WPS函数专家

针对你说的奇怪排序,因为是文本,他实际上是这样比的,从左往右 首先比较第一位 5 所以两个5的在最前,,然后比较第二位 因为一个是8 一个是9 所以8在前。如果比如有1,11那位数多的大。
· 重庆
回复
懒得批爆

创作者俱乐部成员

是的,这就是文本的比较方法,一个字节一个字节的比较 数字的比较就是整体比较大小
· 四川省
1
回复
 
大佬救命@懒得批爆
· 浙江省
回复
懒得批爆

创作者俱乐部成员

请移步https://bbs.wps.cn/topic/22186查看详细解答,谢谢。
· 四川省
1
回复
 
学习
· 山东省
回复
 
wps新路

WPS函数专家

推荐textsplit前面加上-- 转数值后排序。
· 重庆
回复
懒得批爆

创作者俱乐部成员

好主意
· 四川省
回复