更改COUNTIF范围内自动
我用这个公式来计算的话冲在过去的30天,但在一个新行添加在底部的范围没有发生变化。更改COUNTIF范围内自动
如何更改公式,以便在将新行是在底部的范围自动调节添加?要检查的行数始终为30.
=COUNTIF(D2433:D2463, "Red")
使用以下命令:
=COUNTIF(OFFSET($D$2433,0,0,30,1),"Red")
的参考文献使用了$ d $ 2433至$ d $ 2463计数31,如果你需要在上述公式中30至31
偏移31的变化将在$ d开始$ 2433而在同一列倒数行
COUNTIF将计算,如果红
更新
如果在列d只插入数据进行计数,你可以使用:
=COUNTIF(OFFSET(INDIRECT("$D$"&MAX(IF($D:$D<>"",ROW($D:$D),0))),0,0,-30,1),"Red")
这是一个数组公式按按Ctrl + 移 + 输入,而不是仅仅输入
新配方会发现在列d中最后一个非空行,然后间接会纠正公式自动
@ ian0411 - 您的公式计算COL D中所有红色实例,我只需计算最后30个COL中的红色实例。而且我还需要公式在底部添加新行后尽快更改范围。例如,添加行D2464时,公式将更改为在30行范围内包含行D2464。谢谢。 –
@ yass-这不会按需要工作。当一个新行添加到底部时,我需要将公式更改为2434,以便只计算最后30行。谢谢。 –
我已经测试了所有的公式,发现只有yass的工作,仍然有一点修改。我已将30天定义为负数(-30),并将范围更改为$ 2463美元。 –
您需要相对单元格引用。你可以用
=OFFSET()
功能。
另一种技术是使用动态命名范围:
-
Formula > Name Manager > New
:第一提供一个名称,然后插入下列公式Referes to
字段。也看到图片。
=INDEX(Sheet1!A:A,1):INDEX(Sheet1!A:A,INDEX(MAX((Sheet1!$A:$A<>"")*(ROW(Sheet1!A:A))),0))
这应该给你一个系列,如$A$1:$A$300
取决于其中最后一个非空单元格的。
=COUNTIF(INDEX(D:D,AGGREGATE(14,6,ROW(D:D)/--((D:D)<>""),1)-30):INDEX(D:D,AGGREGATE(14,6,ROW(D:D)/--((D:D)<>""),1)),"Red")
条件:
还有最后一排下的所有行必须为空白 不能有最后30行内的任何空白行或您的计数可能会关闭。
这是一个类似数组的函数。如果使用全范围引用,则每次聚合函数引用完整列范围时,都会检查1048576个单元格。因此,如果你使用公式很多,你可能会陷入困境,如果你只使用它几次,你可能会确定。
1)数据中是否有空白行?即标题行,然后是一个空白的间隔行,那么你的数据? 2)最后一个条目下面的所有单元格一直到行1048576为空? 3)你的数据是从第2433行开始还是仅仅是一个例子? –