2015-06-06 45 views
0

我有2列如下動態總查詢

A  B   
Trade 0 
     0 
     1 
     7 
     6 

現在,一旦可口可樂返回「交易」 - 我想在COLC返回 - 大於0的第一個值,在這種情況下這將是值1,位於單元格B4中。因此,我希望它總和爲> 0並返回該數字。

從評論:

我正沿

行思

= IF(B2> 0,B2,B3)

...但我需要擴展這樣說如果B3不是> 0,給我B4?不過,這似乎只是長篇大論和不可持續的10000+行數據

+0

我已經試過各種IF和SUM如果功能,但沒有一個會讓我到我想要的。有任何想法嗎? :) – Kaiming

+0

如果你有*'嘗試了各種IF和SUM如果函數'*然後顯示一個或多個嘗試(工作與否)。 – Jeeped

+0

我正在考慮= if(B2> 0,B2,B3)的行,但是我需要擴展這個來說明如果B3不是> 0給我B4?但它看起來很長,並且不能持續超過10000行數據 – Kaiming

回答

0

警告:我想不出任何非數組公式,將做到這一點,10,000行的任何數據都將是硬上用數組公式計算加載。

我將基於這個公式爲基礎的解決方案在下面的示例數據,這是我可以從您的原始問題確定最好的。

SUM staggered data with conditions

隨着從D2 A列中的文本字符串的列表:D5中,我使用以下陣列式在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 ++Enter↵完成。輸入正確後,可以根據需要填寫。你的結果應該類似於以下內容。

SUM staggered data with conditions INDEX formula

該公式不會動態地截斷列引用,但我還沒有嘗試過在10K行數據。預計一些計算滯後。