你會寫 多表求和 公式嗎?
就在一分鐘前,蘭色又看到有同學提「怎麼進行多表求和?」 ,今天蘭色必須要整理一下關於多表求和的公式了。(網上相關教程很少,建議收藏)
01.多表相同位置求和
多個工作表如果格式完全相同,可以用sum函數的多表求和功能。
【例】如下圖所示,要求在匯總表裡設置合計公式,匯總前19個工作表B列的和。
匯總表B2單元格公式:
=SUM(Sheet1:Sheet19!B2)
02.行數不同、項目個數不定的多表求和
【例】如下面動圖所示,要求計算本年所有月份的各個部門的工資合計數。
匯總表B2單元格公式:
=SUMPRODUCT(SUMIF(INDIRECT(ROW($1:$3)&"月!A:A"),A2,INDIRECT(ROW($1:$3)&"月!C:C")))
公式說明:
ROW($1:$3)&"月!A:A" :生成3個月的工作表A列的引用地址。有N個月,這裡的3就可以替換為N。
Indirect ():可以把生成的字元串轉換為引用。例如:"A1"是字元A和1的連接,而indirect("A1")指的是A1單元格。
SUMPRODUCT:本例求和是數組運算,用它省去了按三鍵輸入的數組形式。
如果名子無規則,也可以用下面的公式
=SUMPRODUCT(SUMIF(INDIRECT({"1月!A:A";"2月!A:A";"3月!A:A"}),A2,INDIRECT({"1月!C:C";"2月!C:C";"3月!C:C"})))
如果你想名子可以批量生成,可以用宏表函數GET.WORKBOOK(1),用法有點複雜,這裡不再詳述.
03.多表多條件求和
單條件用sumif,多條件,直接用Sumifs函數替換Sumif函數
=SUMPRODUCT(SUMIFS(INDIRECT(ROW($1:$3)&"月!C:C"),INDIRECT(ROW($1:$3)&"月!A:A"),A2,INDIRECT(ROW($1:$3)&"月!B:B"),B2))
註:看著很複雜,其實就是sumifs的基礎應用,只是用indirect函數生成多個表格的單元格引用地址。
蘭色說:多表求和公式看起來很長很唬人,其實原理並不複雜,關鍵是要理解indirect函數配合row()或數組生成多個表格的引用。如果你真的不明白,還是先收藏起來備用吧。
推薦閱讀:
※【Miuo】配色公式:紅藍白,穿出質感和經典
※股價上穿13日均線公式
※你背過的最難記、最複雜的公式是什麼?
※Excel函數公式:含金量超高的每天都要使用的5個Excel函數公式
※男女九星命卦、紫白飛星流年星入中速算公式
TAG:公式 |