row和column的常规用法
昨天说了row和column的基础知识,今天用2个例子来说明一下row和column的常规用法。
1.制作九九乘法表
在A1单元格中输入公式=COLUMN(A1)&"×"&ROW(A1)&"="&COLUMN(A1)*ROW(A1),向下向右填充,得到下图的结果。
如果你看不懂,没关系,先看下面的是如何做出来的。你观察一下,发现还是很有规律的。先看乘号前面的数字,向下填充不变,向右填充递增,是不是符合column函数的特性;再看乘号后面的数字,向下填充递增,向右填充不变,符合row函数的特性。所以在column和row中间连接个乘号就可以了,就是=COLUMN(A1)&"×"&ROW(A1)这部分。
下面2图,一个是column(a1),一个是row(a1)。
最后再连接上等号和它们相乘的结果就是完整的表达式。你会说乘法表有空白的部分,像下图这样。
其实也很简单,输入公式=IF(ROW(A1)<COLUMN(A1),"",COLUMN(A1)&"×"&ROW(A1)&"="&COLUMN(A1)*ROW(A1))。这里用if函数进行判断,如果行号小于列号,就显示为空,否则显示出表达式。
2.将一列转成多行多列
如下图所示,将A列的数据转为右表的多行多列。在C23单元格中输入公式=INDIRECT("a"&COLUMN(A1)+22+ROW(A1)*3-3),向右向下填充。
先不要看那个公式,首先要将A列的单元格地址写到我们的目标区域,如上图最下面那个表,然后用间接引用函数indirect就可以返回单元格地址对应的内容。现在的问题是怎么样用函数将这个地址表构建出来。
先把a去掉,只看数字,就是下图右边的表1。表1实际上是表2加表3得来的。那么表2好构造吗?输入公式=COLUMN(A1)+22,向右向下填充;表3实际就是个等差数列,输入公式=ROW(A1)*3-3,向右向下填充。这两部分加起来再填充就构建出表1。
在表1前面连接上a就构建出单元格地址,也就是这部分"a"&COLUMN(A1)+22+ROW(A1)*3-3,最后在外面用个indirect函数就得到了单元格地址对应的内容。
留个作业题,将一行转为多行多列。
如果对你有所帮助或启发,请打赏或分享一下,你的支持就是我最大的动力!
此公众号没有留言功能,如果有问题可以发到邮箱715704566@qq.com,有时间会回复的。
关注解锁更多函数的用法