Excel表格里的姓名、编号等数据如果分散在多个区域,后续筛选、统计时往往需要先整理成一列。以前可能要复制粘贴多次,现在利用TOCOL函数就能直接把多行多列数据转换为单列,处理名单、值班表、签到表等数据会方便很多。

一、用TOCOL把多列数据整理成一列

假设B2区域中分布着员工姓名,中间还存在一些空白单元格。想把这些姓名集中到一列,可以输入:

=TOCOL(B2:D8,1)

其中,B2是需要处理的数据区域,第二参数设置为1,表示转换时忽略空白单元格。

如果还希望直接得到不重复的员工名单,可以与UNIQUE组合:

=UNIQUE(TOCOL(B2:D8,1))

回车后,结果会自动向下溢出,形成一份去重后的名单。

Excel如何把多列数据合并成一列?TOCOL函数轻松实现-趣帮office教程网
TOCOL函数

二、控制TOCOL的数据读取顺序

TOCOL默认按照“行”读取数据,也就是先处理第一行,再继续下一行。如果希望从上到下逐列读取,可以将第三参数设置为TRUE:=TOCOL(B2:D8,1,TRUE)

这样就会按照列的方向依次整理数据。

三、遇到错误值怎么办?

如果原始区域中包含错误值,可以通过第二参数控制是否忽略。

例如:=TOCOL(B2:D8,3)

参数3表示同时忽略空白和错误值。如果只需要忽略错误值,则可以使用2。如果第二参数使用0或直接省略,空白等内容会按照默认规则参与转换。

四、使用TOCOL需要注意什么?

TOCOL属于动态数组函数,使用后结果会自动扩展。如果公式下方已经存在其他内容,可能出现#SPILL!错误,因此需要提前留出足够的结果区域。

总结

面对分散在多行多列中的名单或数据,TOCOL可以直接将其整理成单列,再结合UNIQUE即可快速完成去重。掌握这两个函数,处理多区域数据会更加高效。