今天給大家分享一篇excel公式技巧,excel反向求和技術(shù)。上一期我們給出了一個公式,能夠求出一列數(shù)值中從最后一個數(shù)值開始向上數(shù)5個數(shù)值的和,忽略其中的空格。本文給出了一個更簡潔的公式,并且可以指定求后面的X個數(shù)值之和。
如下圖1所示,假設(shè)我們要求這列數(shù)值后面5個數(shù)值之和,即16+2+5+6+1=30,注意,空格不算在內(nèi)。
圖1
如下圖2所示,在單元格C2中指定要求和的數(shù)字的個數(shù),在單元格C5中輸入數(shù)組公式:
=IFERROR(SUM(OFFSET($A$1,LARGE(IF($A$1:$A$15>0,ROW($A$1:$A$15)),C2)-1,0,ROWS($A$1:$A$15),1)),”沒有這么多數(shù)字”)
圖2
公式中,使用OFFSET函數(shù)確定要求和的單元格區(qū)域,其中的關(guān)鍵部分是:
LARGE(IF($A$1:$A$15>0,ROW($A$1:$A$15)),C2)-1
IF函數(shù)判斷單元格區(qū)域A1:A15中的值是否大于0,如果大于0,則返回該單元格所在的行號,否則返回FALSE,即:
LARGE({1;2;FALSE;4;5;6;7;FALSE;9;10;11;FALSE;FALSE;14;15},C2)-1
如果我們要求最后5個(單元格C2中的值)數(shù)字之和,那么可以看出,要開始求和的單元格對應(yīng)的值的所在的行數(shù)從大到小排在第5位。也就是說,使用LARGE函數(shù)獲取數(shù)組中第5大的值,即對應(yīng)著要開始求和的單元格所在的行號,減去1,得到OFFSET函數(shù)從單元格A1開始到達(dá)開始求和的單元格要偏移的行數(shù)。即:
LARGE({1;2;FALSE;4;5;6;7;FALSE;9;10;11;FALSE;FALSE;14;15},5)-1
其中的FALSE對應(yīng)著空單元格。轉(zhuǎn)換為:
9-1
結(jié)果為:
8
代入主公式中得到:
=IFERROR(SUM(OFFSET($A$1,8,0,ROWS($A$1:$A$15),1)),”沒有這么多數(shù)字”)
轉(zhuǎn)換為:
=IFERROR(SUM(OFFSET($A$1,8,0,15,1)),”沒有這么多數(shù)字”)
轉(zhuǎn)換為:
=IFERROR(SUM($A$9:$A$23),”沒有這么多數(shù)字”)
即:
=IFERROR(SUM({16;2;5;0;0;6;1;0;0;0;0;0;0;0;0}),”沒有這么多數(shù)字”)
得到結(jié)果:
30