夜雨聆风学习资料网

ARTICLE · 1198310

WPS表格新函数ARRAYTOTEXT: 多个单元格内容一键合并,太省事了

WPS表格新函数ARRAYTOTEXT: 多个单元格内容一键合并,太省事了

大家好,我是墨云轩,一名教办公软件的中职教师。

最近在整理WPS表格的新函数,学到 ARRAYTOTEXT 这个函数时,忍不住想分享给大家。先说说我遇到的实际问题:把几十个单元格里的姓名,合并到一个单元格里,中间还要用逗号隔开。以前我是用 CONCAT 或者 & 符号一个个连,单元格多了手都点酸。

学了 ARRAYTOTEXT 之后,一个公式就搞定了。下面把我的学习笔记分享出来,步骤尽量写细,新手朋友也能跟着做。


一、这个函数是干什么的?

先解决记不住的问题。ARRAYTOTEXT 读起来像"鹅锐图泰可思特"(我第一次也是这么记的):

  • Array:数组、阵列
  • To Text:转成文本

合起来,它的功能就是:把一批数据批量转换成文本,并集中放到一个单元格里。文本转换后还是文本,非文本值(比如数字)会转成文本,然后串联到一起。

我个人的理解:它跟 Textsplit、Concat 有点像,可以放在一起对比着学。

二、语法很简单,就2个参数

=ARRAYTOTEXT(数组, [格式])

参数1:要转换成文本的数组,可以是单元格引用,也可以是常量数组。

参数2:可选,决定转换格式:

取值
模式
效果
省略或0
简洁模式
结果在一个单元格内,用逗号和空格分隔
1
严格模式
返回带大括号的数组形式,用分号/逗号和双引号分隔

注意:第二参数如果填负数,或者大于等于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表格里逐一验证过,大家可以放心跟练。

与社区里的大佬相比,我还有很多要学的地方,但边学习、边分享,每天进步一点点,就是我坚持的方式。

您在合并单元格内容时还有什么更好的方法?欢迎留言交流,咱们一起进步!

我是墨云轩,热衷分享办公小技巧,边学习,边分享,每天进步一点点!感谢您的阅读!

相关学习资料