TOCOL参数和基本用法
TOCOL:把指定区域的数据整合到一列中显示。
=TOCOL(要处理的数据,是否省略空值或错误值,按行或按列)
例如直接框选A1:A7作为TOCOL的第一参数,所有数据被放到一列中显示,其中的空单元格会显示为0:
=TOCOL(A1:C7)
第二参数设置为1,表示忽略所有空单元格:
=TOCOL(A1:C7,1)
此外还提供了忽略错误值等选项,输入时有明确的提示。
第三参数设置为TRUE则表示按列扫描,注意对比上下两图结果中名字顺序的区别。
=TOCOL(A1:C7,1,TRUE)
TOROW参数和基本用法
TOROW的参数和基本用法与TOCOL雷同,参考即可。
搭配FILTER
TOROW和FILTER是绝佳的搭配。因为FILTER的结果只能是按列显示,要按行显示可借力TOROW.
=TOROW(FILTER(A:A,C:C=F2))
整合不连续区域
TOCOL和TOROW整合不连续区域时需要用一种在其他函数上不常见的表达方式,把多个区域放在一个括号内,用逗号隔开:
=TOCOL((A1:A4,C1:F1))
例如要在两个区域中查找数据,可以用TOCOL给XLOOKUP创建2个数据区域作为第二第三参数:
=XLOOKUP(G3,TOCOL((A:A,D:D),1),TOCOL((B:B,E:E),1),)
逆透视
通常把下图所示的转换称作逆透视,即数据透视的反方向操作。
在此之前要用函数实现这个效果简直天方夜谭,但现在只需三个TOCOL轻松实现。
IF获取对应数量的姓名,TOCOL整合为一列:
=TOCOL(IF(B2:D4>0,A2:A4,""))
同理可得相应数量的月份:
=TOCOL(IF(B2:D4>0,B1:D1,""))
最后一列数据简直唾手可得:
=TOCOL(B2:D4)