與 30萬 讀者一起學(xué)Excel
VIP學(xué)員的問題,當(dāng)改變I1單元格的日期,自動求和“當(dāng)月至前面幾個月”的數(shù)據(jù)?比如現(xiàn)在是3月,就對1-3月的數(shù)據(jù)進行求和。
對于這種問題,盧子能寫出無數(shù)條公式。
1.OFFSET
先來看語法,對N個月的數(shù)據(jù)進行求和。起點是B2,N是變動的,其他為固定值。
=SUM(OFFSET(起點,0,0,1,N))
N可以借助MATCH和MONTH獲取。
MATCH就是獲取在數(shù)據(jù)源的排位。
=MATCH($I$1,$B$1:$G$1,0)
MONTH就是獲取月份數(shù)。
=MONTH($I$1)
將這2個函數(shù)嵌套進去,就得到2種方法。
=SUM(OFFSET(B2,0,0,1,MATCH($I$1,$B$1:$G$1,0)))
或者
=SUM(OFFSET(B2,0,0,1,MONTH($I$1)))
2.SUMIF
借助日期進行判斷,如果小于等于本身,就對區(qū)域進行求和。
=SUMIF($B$1:$G$1,"<="&$I$1,B2:G2)
這里的條件經(jīng)常會寫錯,將單元格放在""里面,"<=$I$1"這種是不可以的,這樣就變成了文本,而不是可變的單元格。
3.SUMPRODUCT
思路跟SUMIF一樣,唯一的差別就是寫條件更方便,不容易出錯。
=SUMPRODUCT(($B$1:$G$1<=$I$1)*B2:G2)
用SUMPRODUCT還有一個好處,就是可以隨意嵌套函數(shù),而SUMIF的區(qū)域是不能亂嵌套函數(shù)的。
比如對數(shù)據(jù)源進行更改,現(xiàn)在要累計1-N個月金額的和??梢郧短譓ONTH獲取月份再進行比較,會更方便。
=SUMPRODUCT((MONTH($A$2:$A$21)<=$F$1)*$B$2:$B$21)
平常在寫公式的時候,比較喜歡用這個函數(shù),更加靈活多變。
一次報名成為VIP會員,所有課程永久免費學(xué),采用錄制視頻+微信答疑的形式學(xué)習(xí),僅需888元,待你加入。
關(guān)于求和還有什么疑問,都可以在留言區(qū)提出。
作者:盧子,清華暢銷書作者,《Excel效率手冊 早做完,不加班》系列叢書創(chuàng)始人,個人公眾號:Excel不加班(ID:Excelbujiaban)