Excel是使用最为频繁的表格处理软件,其强大的数据处理功能令人叹为观止,下面一起来看看Excel中生成数列的两个帮手row 和 column,看看这两个函数之间能碰撞出怎样的火花。
1 初窥门径
这个函数里面的参数是可选的,如果没有参数,那么该函数默认返回当前单元格所在的行,比如说我在A5单元格输入以下公式
=ROW()
回车后,该单元格就会显示 5 ,如下图所示
如果里面有参数的话,那么就会返回该参数所在的行,比如说我在A5单元格输入以下公式
=ROW(A1)
回车后,该单元格就会显示 1 ,如下图所示
column 函数用法大致一样,不再多说。
2 构造数列
可以想像,在A1单元格输入
=ROW()
然后向下填充的话,可以得到什么,没错,就是自然数列,如下所示
那我横向填充会得到什么呢,是否同样会显示 1 到 10 呢,下面来看看结果
what happened? 哦,原来row函数只返回所在的行,而A1, B1这些单元格都在第一行,所以就都是 1 了。
下面在A1单元格换column函数玩玩看,可想而知,其横向填充应该是 1 到 10, 其竖向填充应该不变,下面来验证看看
果然不出所料。
3 双剑合璧
下面思考下,怎么构造出如下的数列
机智的boy可能会说,这还不简单,第一行手动输入1 到 5,然后从第二行开始用上面的数加5,向下填充就好了啊!
其他同学可能就会说了,陈独秀同志请坐下,请大钊同志发言。。。同样是九年义务教育,你怎么这么优秀呢?
好了,言归正传,其实机智boy的说法不无道理,如果仅仅是为了得到这样的数,那么上述的方法确实是个很好的办法,但如果这些数构造出来之后,还要用于其它函数,那么这个办法就不好使了。
下面来分析一下,我作一下小小的变换,看看是不是就豁然开朗了
加号前面的数,竟然都变成了0 × 5, 1 × 5, 2 × 5这些,且每一行中,加号前面的数都相同,这不就是row函数的作用嘛;对每一列来讲,加号后面的数竟然都是一样的,这不就是column函数的作用嘛。
哦,有也这样的分析,你三下五除二,就把公式给写出来了
=(ROW()-1)*5 + COLUMN()