前军教程网

中小站长与DIV+CSS网页布局开发技术人员的首选CSS学习平台

原来3个 To 函数这么神奇!1 个很老实,2 个很善变!TOROW、TOCOL

Excel函数让人着迷,

是因为它能够非常高效地解决实际问题,

同样的函数通过不同的组合,可以释放出不一样的魔力。

在WPS表格中任意选择一个单元格,输入TO,会出来这样的画面:

其中,TODAY 最老实,不需要任何参数,直接用=TODAY()就告诉你当天的系统日期,这是题外话。

今天的重点是两个善变的函数 TOCOL和TOROW,它们会变什么呢?

一、TOROW是谁?能变什么?

TOROW可以将二维数组变为一行

也就是说,我们需要告诉TOROW,要转换的范围是什么?忽略什么?如何扫描?

举例来说:

如上图所示,在E4单元格输入=TOROW(A1:C7),这里省略了第2、第3参数。

结果返回:

可以看到TOROW将二维数组变成了一行,空白单元格转换后显示为0,排列的时候是按第1行、第2行、第3行......这样的顺序扫描的,也就是默认按行扫描。

把公式换为=TOROW(A1:C7,3,1)再试一下

这里用到了第二参数3、第三参数1。

结合上图对参数二、参数三的解释就明白了。

第二参数3表示转换后忽略了空白单元格和错误值;

第三参数1表示排列的时候按第1列、第2列、第3列这样的顺序扫描。

于是就出现上图的这个效果。

二、TOCOL是谁?能变什么?

TOCOL可以将二维数组变为一列

用法上同TOROW一致,也是需要告诉TOCOL,要转换的范围是什么?忽略什么?如何扫描?

有了TOROW的基础,以下例子就很容易理解了。

E1=TOCOL(A1:C7,3,1),忽略空白单元格和错误值,按列扫描;

F1=TOCOL(A1:C7,2,1),忽略错误值,按列扫描;

G1=TOCOL(A1:C7),不忽略特殊值,按行扫描。

三、应用案例

如何将左侧的表整理为右侧的表格?

H2=TOCOL(IF(B2:F7="",1/0,A2:A7),3)

I2=TOCOL(IF(B2:F7="",1/0,B1:F1),3)

J2=TOCOL(B2:F7,3)

解析:

1.以上三个公式,核心就是将3个同样大小区域范围的数组,用TOCOL转换为一列,转换的第2个参数都写为3,表示忽略空白单元格和错误值。

2.难点是如何生成“星期”、“姓名”这两个数组区域,方法就是用IF函数进行判断,原来的空白单元格就用1/0计算得到#DIV/0!,如上图左下方所示。

小结:TOCOL、TOROW实际就是实现二维数组转换为一维数组的函数,TOROW是转换为一行,而TOCOL是转换为一列。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言