【例】如下图所示。要求在B列计算连续的符合条件(>3)的数字个数。
分析:
根据条件计算,我们用countif可以轻松解决,如:
=Countif(a:a,">3")
但本题的难点在于要分段统计,本段的区域大小很难确定。
=Countif(?,">3")
本题借用lookup也可以计算出来,但比较麻烦
B2公式:
=IF(OR(A2<=3,A3>3),"",IFERROR(ROW()-LOOKUP(1,0/(A$2:A2<3),ROW(A$2:A2)),ROW()-1))
如果用倒减法,公式将变得简单很多:
=IF(OR(A2<=3,A3>3),"",COUNTIF(A$2:A2,">3")-SUM(B$1:B1))
公式说明:
IF(OR(A2<=3,A3>3),"":如果A列当前行<=3或下一行大于3,则公式返回空。
COUNTIF(A$2:A2,">3")-SUM(B$1:B2):利用COUNTIF函数统计A列当前行以前共有多少个大于3的数字,然后减去B列已有结果。这里一定要注意区域的引用方式。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。