当前位置: 主页 > Office办公 > Excel专区 > Excel教程 > 就是利用本列公式已计算的结果进行倒推的算法

就是利用本列公式已计算的结果进行倒推的算法

  • 2022-08-14
  • 来源/作者: Wps Office教程网/ 菜鸟图库
  • 114 次浏览

  今天一位同学提了一个问题,如果用一般的解题思路还真的有些麻烦。不过使用Excel的“倒减法”却可以轻松解决。

  【例】如下图所示。要求在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列已有结果。这里一定要注意区域的引用方式。

  补充:所谓倒减法,就是利用本列公式已计算的结果进行倒推的算法。是excel公式设置时很常用的一种公式算法,希望同学们能熟练掌握。