2017-04-19 86 views
0

國旗行我有兩列這樣的:有助於總和標準

Name Value 
A  1 
A  4 
B  3 
B  2 
B  5 
C  6 
C  8 
C  10 
C  4 

我做SUMIF基礎上的名字,但我有一個條件,以充分填充。從每當我的總和達到一個名字組至少值尋找讓說5我希望這些行具有標誌1或否則爲0。在這個例子應該是:

Name Value Flag 
    A  1 1 
    A  4 1 
    B  3 1 
    B  2 1 
    B  5 0 
    C  6 0 
    C  8 0 
    C  10 0 
    C  4 1 

的數據是隨機的,而不是在任何訂單和文件都是動態的,因此只能按降序排列才能解決問題。我不知道偏移量。它可以完成沒有使用偏移量,只有通過常規的ifs,sumifs等謝謝噸!

+0

我不理解您對Flag列的預期結果。你能澄清一兩個?例如,爲什麼名稱C 0的此列中的前三個值和最後一個1? –

+0

C值的遞增順序是4,6,8,10。現在,當我從最少開始總結時,它是4,10,18,28我的意思是累積的。但是我的條件是「5」,只有在第一個之後纔會遇到,所以我想把它當作「1」,其他的就是「0」。希望你清楚。 –

+0

如果給定名稱包含一個或多個出現多次的值,該怎麼辦?按照求和順序應該給予哪些優先級?例如,如果您給出的表中的每個條目都是用於Name =「A」和Value = 1的呢? –

回答

1

這或許可以有所簡化,但是,假設你把你所選擇的閾值(例如5)J1。而且,就像暗示你回答我的最後的評論,對於給定的名稱沒有一個值出現更多過一次,然後,在C2陣列式**

=IFERROR(GESTEP(MATCH(1,0/(MMULT(0+(ROW(INDEX(A:A,1):INDEX(A:A,COUNTIF(A$2:A$10,A2)))>=TRANSPOSE(ROW(INDEX(A:A,1):INDEX(A:A,COUNTIF(A$2:A$10,A2))))),SMALL(IF(A$2:A$10=A2,B$2:B$10),ROW(INDEX(A:A,1):INDEX(A:A,COUNTIF(A$2:A$10,A2)))))<=J$1)),MATCH(B2,SMALL(IF(A$2:A$10=A2,B$2:B$10),ROW(INDEX(A:A,1):INDEX(A:A,COUNTIF(A$2:A$10,A2)))))),0)

複製下來作爲必需的。

**數組公式以同樣的方式爲「標準」的公式不進入。您只需按住CTRL和SHIFT鍵,而不是按下ENTER鍵,然後按ENTER鍵。如果你做得對,你會注意到Excel在公式周圍放置了大括號(儘管不要試圖自己手動插入這些)。

+0

而不是J1我會給那裏的電話號碼。它很好嗎? –

+0

當然。隨你便。 –

+0

這太棒了!但我的excel非常龐大,所以它超載。但是,這個解決方案非常出色。非常感謝:) –

0

在列C添加

=IF($B10<5,1,0) 

林假設的最後一個值是指爲0與C的值已經通過5?試試這個。

=IF(SUM(A2:INDEX($B$2:$B$10,MATCH(A2,$A$2:$A$10,0)))<6,1,0) 
+0

但是我必須從滿足標準的地方看到最少的累積總和。請看我對XOR的評論 –

+0

我用這個得到了0反對4,但我想用1反對它在C名稱 –

+0

由於代碼沒有照顧最小數字,所以它最終得到4,總和結果是24,然後最終28,因此0反對它。我想照顧在同一行中選擇最少不選 –