构建数组的函数row和column的基础用法
之前我们已经把数组的运算说完了,既然说到数组了,那么今天就说说和构建数组有关的2个函数row和column,其实它们是查找引用函数。row返回一个引用的行号,column返回一个引用的列号。
-01-
row函数
1.函数语法结构
row函数语法结构如下,有一个参数,而且是可选的。
ROW([reference])
Reference 可选。 需要得到其行号的单元格或单元格区域。
注意事项:
如果省略 reference,则假定是对函数 ROW 所在单元格的引用。
如果 reference 为一个单元格区域,并且 ROW 作为垂直数组输入,则 ROW 将以垂直数组的形式返回 reference 的行号。
Reference 不能引用多个区域。
2.示例说明
如下图所示,B列是row函数的结果,C列是B列的公式,方便大家看。这里我列举了6种写法,下面一一说明。
第1种=ROW(E2)就是返回E2单元格的行号,当然就是2了。但是它不是普通的2,而是数组的{2},可以在编辑栏中选中公式按F9查看,如下图。说明row函数返回的结果是数组,只不过这里只有1个元素。
第2种=ROW(D2:E2)是返回D2:E2这个区域的行号,由于它们在一行,所以行号也是{2},下面请自己按F9查看。
第3种=ROW(4:4)是返回第4行的行号,当然是{4}。4:4可以手动输入,也可以选第4行。如果想要第4行和第5行的行号,可以输入=ROW(4:5),此时的结果就是{4;5}。
第4种=ROW(E3:E4)是返回E3:E4这个区域的行号,此时区域有多行,所以结果为{3;4}。
第5种=ROW(D:D)是返回D列的行号,此时区域是整个D列,返回D列的所有行号,也就是excel的所有行号,1,2,3,···一直到1048576,是一个非常庞大的数组{1;2;···;1048576}。
第6种=ROW(),此时参数为空,返回row函数所在单元格的行号。从上图可以看到=ROW()所在的单元格是B7,那么返回B7的行号,就是{7}。
3.简单应用
a.求从1一直加到100的和。
你上学时,老师肯定让你做过这个题吧。如果用excel解决,那就超简单。在任意单元格种输入公式=SUM(ROW(1:100)),按ctrl+shift+enter三键。
ROW(1:100)返回1到100行的行号,自然是1到100这个数组,用sum求和。这里注意要按ctrl+shift+enter,否则结果不正确。说明此时row返回一个内存数组,内存数组不只是通过数学运算,比较运算和连接运算得到,还能通过函数运算得到。
b.构建各种序列数。
如下图所示,A到D列都是等差数列,E列是等比数列。那么这些序列是怎么构成的。先看A列的公式,在A11单元格中输入公式=ROW(A1),向下填充。A11返回A1单元格的行号1,A12返回A2单元格的行号2,···以此类推。
B列的公式其实就是A列的公式乘以2,B11=ROW(A1)*2。C列的公式是B列的公式减去1,C11=ROW(A1)*2-1。D列的公式是D11=ROW(A1)*5-5。
不知道你有没有发现,等差数列的公式有个规律,等差是几,就乘以几。比如C列等差是2,公式就乘以2;D列等差是5,公式就乘以5。然后调整其从几开始。
E列的公式为=2^ROW(A1),这样向下填充就是2的1次方,2的2次方,···。
row函数还有1个特性,就是向右填充时,同一行的值是一样的。
-02-
column函数
1.函数语法结构
column函数语法结构如下,有1个可选参数。
COLUMN([reference])
reference 可选。 要返回其列号的单元格或单元格范围。
注意事项:
如果参数 reference 为一个单元格区域,并且 COLUMN 函数是以水平数组公式的形式输入的,则 COLUMN 函数将以水平数组的形式返回reference 的列号。
如果省略参数 reference,则假定该参数为对 COLUMN 函数所在单元格的引用。
参数 reference 不能引用多个区域。
2.示例说明
如下图所示,也有几种写法。第1种=COLUMN(E19)是返回E19单元格的列号,结果是5。因为A列是1,所以E列是5。当然这里还是数组的形式。
第2种=COLUMN(E20:E22)是返回E20:E22这个区域的列号,由于是同一列,所以返回1个值5。
第3种=COLUMN(E:E)是返回E列的列号,还是5。与第2种相比不用写行号了。
第4种=COLUMN(E22:F22)是返回E22:F22这个区域的列号,由于是不同的列,所以返回每一列的列号{5,6},此时数组中有多个元素。
第5种=COLUMN(1:1)返回第1行的所有列号,也就是excel中所有的列号,也是一个庞大的数组,这里就不演示了。
第6种=COLUMN()返回column函数所在单元格的列号。从上图看到=COLUMN()所在的单元格是B24,返回的列号就是2。
3.简单应用
在水平方向构建等差数列,公式和row的差不多,就不写了。你可以自己写一下。
向下填充时,同一列的值一样,有点像一维数组的扩展。
如果对你有所帮助或启发,请打赏或分享一下,你的支持就是我最大的动力!
此公众号没有留言功能,如果有问题可以发到邮箱715704566@qq.com,有时间会回复的。
关注解锁更多函数的用法