![](/img/trans.png)
[英]In Excel, can I sum a column of cells based on whether or not a given value is in each of the rows?
[英]Summing a column in Excel based on a another value falling between each rows 2 adjacent cells
我有一個Excel電子表格,可以對所選帳戶的直接借記進行分析,我有一個查找表"Sheet2"
,如圖所示,其中包含我需要的信息。
我感興趣的表有3列我感興趣的, amount
和to and from
日期。
在Sheet1
B13
我想在Sheet2:D5:D:100
上執行=sum()
,但僅在B1
中的日期在范圍內時,才將其添加到總和中。
我可以使用-sumifs()
來對列進行總計,甚至可以基於日期對一行進行-sumifs()
,但不知道從何處開始。 我想我需要使用count()之類的東西?
我不一定要尋找一個直接的答案,而是對自動計算的一個粗略解釋,以便將來我可以輕松地完成這種事情!
普通的舊字體?
A B C
1 2013-03-14
2 6 2013-01-01 2013-01-02
3 8 2013-03-12 2013-03-23
4 5 2013-05-21 2013-06-01
=SUMIFS(A2:A4;B2:B4;CONCATENATE("<=";B1);C2:C4;CONCATENATE(">=";B1))
我認為最好將數組公式與總和混合使用。 就像是
=SUM((B1>Sheet2!$D$5:$D$100)*(B1<Sheet2!$E$5:$E$100)*Sheet2!$C$5:$C$100)
現在,這里發生的事情分為幾個部分:
要在Excel中輸入數組公式,必須使用CTRL + SHIFT + ENTER輸入公式。 括號{}將出現在公式周圍。 它看起來像
{=SUM((B1>Sheet2!$D$5:$D$100)*(B1<Sheet2!$E$5:$E$100)*Sheet2!$C$5:$C$100)}
如果有效。 如果您無法完全理解,請發表評論,我會幫助您。
假設您希望通過幾個日期來計算總和(從C1的第一部分開始),我將使用以下三種方式之一進行設置。
使用帶有額外列的額外工作表,其中為sheet1中的每個日期計算dateLowerBound <date <dateUpperBound,並使用帶有該額外列的SUMIF
作為鍵。
使用DSUM
可以支持復合標准,但是它的語法似乎總是讓我為考慮使用DSUM
感到生氣。
編寫一個VB宏(假設工作表的結構是合理的靜態的,並且在定義明確的點上可以重新計算總計,可以將其掛接到日期單元格和/或日期的onChanged事件上到Sheet2數據表區域。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.