ARTICLE · 1198310
WPS表格新函数ARRAYTOTEXT: 多个单元格内容一键合并,太省事了
大家好,我是墨云轩,一名教办公软件的中职教师。
最近在整理WPS表格的新函数,学到 ARRAYTOTEXT 这个函数时,忍不住想分享给大家。先说说我遇到的实际问题:把几十个单元格里的姓名,合并到一个单元格里,中间还要用逗号隔开。以前我是用 CONCAT 或者 & 符号一个个连,单元格多了手都点酸。
学了 ARRAYTOTEXT 之后,一个公式就搞定了。下面把我的学习笔记分享出来,步骤尽量写细,新手朋友也能跟着做。
一、这个函数是干什么的?
先解决记不住的问题。ARRAYTOTEXT 读起来像"鹅锐图泰可思特"(我第一次也是这么记的):
- Array:数组、阵列
- To Text:转成文本
合起来,它的功能就是:把一批数据批量转换成文本,并集中放到一个单元格里。文本转换后还是文本,非文本值(比如数字)会转成文本,然后串联到一起。
我个人的理解:它跟 Textsplit、Concat 有点像,可以放在一起对比着学。
二、语法很简单,就2个参数
=ARRAYTOTEXT(数组, [格式])
参数1:要转换成文本的数组,可以是单元格引用,也可以是常量数组。
参数2:可选,决定转换格式:
注意:第二参数如果填负数,或者大于等于2的数,是会报错的。我自己试过一次,填了2直接报 #VALUE! 错误,大家别踩这个坑。
一句话总结:简洁模式返回一个单元格里的值列表,严格模式返回和输入一样大小的数组——有点像给引用区域按了一次【F9】键。
三、基础操作:单列、单行合并
第一步,准备一列数据,比如A1:A13是一批姓名。
第二步,在空白单元格输入:
=ARRAYTOTEXT(A1:A13)
第三步,回车。整列姓名就集中到一个单元格里了,中间用逗号和空格隔开。
如果想看数组形式,就加个第二参数:
=ARRAYTOTEXT(A1:A13,1)
结果会带上大括号和双引号,类似 {"张三";"李四";...},方便我们检查数据结构。
四、二维表格也能合并
参数1给一个二维区域,它会按Z字形逐行扫描合并:
=ARRAYTOTEXT(A1:C7)
=ARRAYTOTEXT(A1:C7,1)
=ARRAYTOTEXT(A1:A7&B1:B7&C1:C7)
第三个写法是先把三列用 & 拼起来再合并,适合需要"行内容拼接"的场景,大家可以动手试试区别。
五、全是空白单元格会怎样?
我也好奇这个边界情况,专门测了一下。第一参数全是空白单元格时,函数照样能返回结果(返回空值或空数组),不会报错。这个细节在写公式嵌套的时候有用,心里有底就不会慌。
六、实战案例:忽略空值,合并不规则区域
这是我目前觉得最实用的一个组合用法。数据区域里有空单元格,直接合并会多出一堆分隔符。搭配 TOCOL 或 TOROW,先压成一列/一行并忽略空值,再合并:
=ARRAYTOTEXT(TOCOL(A2:E15,1))
=ARRAYTOTEXT(TOROW(A2:E15,1))
第一步,TOCOL 把 A2:E15 这个不规则区域按列压平,第二参数1表示忽略空白;
第二步,ARRAYTOTEXT 把结果合并到一个单元格。
两步走,空值干干净净,结果整整齐齐。说实话,刚学新函数的时候看不出组合的威力,一组合起来才发现真香。
以上就是 ARRAYTOTEXT 函数的学习笔记,我在WPS表格里逐一验证过,大家可以放心跟练。
与社区里的大佬相比,我还有很多要学的地方,但边学习、边分享,每天进步一点点,就是我坚持的方式。
您在合并单元格内容时还有什么更好的方法?欢迎留言交流,咱们一起进步!
我是墨云轩,热衷分享办公小技巧,边学习,边分享,每天进步一点点!感谢您的阅读!















































































