首页 > 解决方案 > 根据主题计算列中的数字

问题描述

我只是在 excel 中使用公式,想知道如何计算所有 0 直到达到 1,然后根据主题编号重新开始该过程。如果这不能简单地使用公式,我怎么能为此编写 VBA 代码?

现在我正在尝试使用,

=IF(OR(F4=0,F3=1),"",COUNTIFS($A$2:A2, $A$2,$F$2:F2,0)-SUM($I$2:I2))

我在 I3 中输入并更改COUNTIFS($A$#:A#, $A$#...)每个主题编号的部分。

除了最后一个分组外,这似乎有效,因为它不会在下一个主题之前输出数字。

示例数据:

subid         yes       number_yes(output)
1             0
1             0
1             0            3
1             1
1             0            1
1             1
1             0
2             0
2             0            2
2             1
2             0
2             0
3             
etc.

标签: excelvbaexcel-formula

解决方案


空白单元格的数值为零,这是您接受的条件之一。区分空白值和零值。

=IF(and(f4<>"", OR(F4=0,F3=1)),"",COUNTIFS($A$2:A2, $A$2,$F$2:F2,0)-SUM($I$2:I2))

推荐阅读