我有2列如下
A B
Trade 0
0
1
7
6
现在,一旦ColA回归"贸易" - 我想在ColC中返回 - 第一个大于0的值,在这个例子中它将是值1,位于单元格B4中。因此,我希望它总和直到> 0并返回该数字。
来自评论:
我正在思考
=如果(B2大于0,B2,B3)
...但是我需要延长这个来说如果B3不是> 0给我B4?但它看起来很长,并且不能持续10000多行数据
答案 0 :(得分:0)
警告:我无法想到任何可以实现此目的的非数组公式,并且在使用数组公式计算负载时,10,000行的任何数据都会很难。
我将基于这个基于公式的解决方案基于以下样本数据,这是我可以从原始问题中确定的最佳数据。
使用D2:D5中A列的文本字符串列表,我在E2中使用了以下数组公式。
=INDEX(INDEX(B:B, MATCH(D2,A:A, 0)):INDEX(B:B, MATCH(1E+99,B:B )), MATCH(TRUE, INDEX(B:B, MATCH(D2,A:A, 0)):INDEX(B:B, MATCH(1E+99,B:B ))>0, 0))
需要使用 Ctrl + Shift + Enter↵来最终确定数组公式。一旦输入正确,可以根据需要填写它们。您的结果应与以下内容类似。
此公式会动态截断列引用,但我没有在10K行数据上尝试过。预计会有一些计算滞后。