1. 程式人生 > >ExcelVBA:利用SUMIF和OFFSET+MATCH進行多條件求和

ExcelVBA:利用SUMIF和OFFSET+MATCH進行多條件求和

這個源於蘭版的一道題:http://www.excelpx.com/thread-167680-1-2.html
效果如下:


 
利用以下陣列公式即可得到結果:
=SUMIF(B2:I2,B2:C2,OFFSET(B2:I2,MATCH(A3:A6,A12:A15,),))

選中B12:B15,輸入公式,然後按Ctrl+Shift+Enter確認輸入即可。

這個公式充分利用了Excel陣列公式多重計算的功能。讓我們來看一下這個公式是怎麼樣進行運算的

這個公式實質上是對SUMIF的後面兩個引數,條件和求和區域進行了多重運算。

可以看見,條件是一個一行兩列的區域,求和區域是一個四列一行的區域。結果是一個多維度的結果,因為SUMIF會分別對條件和求和區域進行組合後運算。如圖所示:

轉載地址:http://blog.csdn.net/amulee/article/details/6371315