Excel - Count of entries below cumulative threshold without helper column

好久不见. 提交于 2019-12-12 02:57:00

问题


I have the following little table. I'd like a formula that finds the number of values where the cumulative total (of column B) is less than some threshold (tx).

I tried

{=MIN((SUM(OFFSET(B1,0,0,A1:A17))>tx)*A1:A17)-1}

but OFFSET doesn't seem to be arrayable like that. Obviously, this would be trivial with a helper column, but for certain reasons that is not possible.

So the correct answer here should be 10.

tx = .8

A   B
1   0.112106465
2   0.110981698
3   0.091959216
4   0.082163441
5   0.073292066
6   0.072407529
7   0.071646289
8   0.061646797
9   0.06011448
10  0.057566381
11  0.050341978
12  0.048227061
13  0.043207335
14  0.03940462
15  0.012914194
16  0.007603446
17  0.004417003

回答1:


You're not really looking for a MIN; rather it should be MAX that follows your condition.

In E7 as a standard (non-array) formula,

=AGGREGATE(14, 6, ROW(1:17)/(SUBTOTAL(9, OFFSET(B1, 0, 0, ROW(1:17), 1))<D7), 1)

      




回答2:


I prefer the following array formula** due to its non-volatility:

=MATCH(TRUE,MMULT(0+(ROW(B1:B17)>=TRANSPOSE(ROW(B1:B17))),B1:B17)>=0.8,0)-1

Regards




回答3:


The most succinct way to do it I've found is

=SUM(--(SUBTOTAL(9,OFFSET(B1,,,A1:A17))<0.8))

entered as an array formula, or, equivalently,

=SUMPRODUCT(--(SUBTOTAL(9,OFFSET(B1,,,A1:A17))<0.8))


来源:https://stackoverflow.com/questions/35307162/excel-count-of-entries-below-cumulative-threshold-without-helper-column

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!