Excele中,公式=MOD($A$9+ROW()+2,4)代表什么意思?
发布网友
发布时间:2022-05-05 00:50
我来回答
共3个回答
热心网友
时间:2022-06-27 23:18
公式的意义:提取出A1:A30区域中的非空数据。
但此公式最后的ROW()用得不好,不限定具体行号,公式输入位置不同,返回的值也不会相同,也就是说此公式必须输入在第一行中,才能提取出所有非空数据。所以此处,最好用ROW(A1)或ROW(1:1),这样公式可输入在任何起始位置。
SMALL是取第几小函数,/1%%是除以万分之一,也就是乘以10000,这样用是个人习惯,事实上这里只有30行数据,直接*100即可,目的是如果单元格是空值,行号+100,非空,直接返回行号。不管公式中是用ROW()、还是ROW(A1)或ROW(1:1),下拉时行号会增加的,SMALL函数根据增加的行号取出第几小的值。
LOOKUP函数是向后兼容性,返回最后一个小于等于查找值的值,9^9,是9的9次方,就是一个很大的数,因为SMALL取出的行号,就算加上10000,也只有1万多,远小于9^9,肯定小于它,返回的就是SMALL取出的值。
因为公式中用了(A$1:A$30="")这种数组数据,加LOOKUP就是为了取出单一值,不按数组公式的方式输入。等同于公式:
=INDEX(A:A,SMALL((A$1:A$30="")/1%%+ROW($1:$30),ROW())),但此公式是数组公式,即同时按住Ctrl+Shift+Enter三键结束公式编辑,会自动生成一对{},下拉。
或者直接用IF条件判断是为空值的公式:
=INDEX(A:A,SMALL(IF(A$1:A$30<>"",ROW($1:$30),4^8),ROW(A1))),这也是数组公式,即同时按住Ctrl+Shift+Enter三键结束公式编辑,会自动生成一对{},下拉。
热心网友
时间:2022-06-27 23:19
A9数字加上当前行号,再加上2,结果除以4,求余数。
公式下拉得到0至3的循环序号。
热心网友
时间:2022-06-27 23:19
截取其中部分数据