这几天收到很多读者的求助,都是多表合并,各种各样的格式都有,小编逐一整理解答。
明细表都是格式一样的,这张是统计A局的明细。

汇总表,就是将每个明细表的数据直接引用过来。

《多表查询数据最简单的公式》提到了多表引用,没看过的必须先去看文章,了解原理。
不过只是针对一列数据,还有数据是下拉生成。而这种数据是针对多列,而且是右拉生成。
下拉的话,我们用ROW函数。右拉我们可以用COLUMN函数。两个的作用是一样的,都是获取序号。

引用明细表C列的金额可以用下面的公式,通过下拉和右拉可以获取金额。
=INDIRECT($A2&"!C"&COLUMN(G1))
引用明细表F列的金额可以用下面的公式,通过下拉和右拉可以获取金额。
=INDIRECT($A2&"!F"&COLUMN(G1))
也就是通过两条公式搞定汇总表。
如果是自己使用的表格,使用多条公式也没问题。但是,有的时候表格是发给别人的,别人在使用的过程中不太清楚这些事,以为只有一条公式,在下拉或者右拉的时候导致出错。
有没办法一条公式搞定呢?
针对多行多列查找金额,神奇的SUMIF函数就派上用场。很多人只知道SUMIF函数可以对一列数据进行条件求和,而对其它用法一无所知。
查找A列对应B列的值。

同时查找A列和C列,返回B列和D列的对应值。正常我们都是用两个SUMIF函数的。
=SUMIF(A:A,F1,B:B)+SUMIF(C:C,F1,D:D)
但我要告诉你,一个足矣,采用错位引用法。
=SUMIF(A:C,F1,B:D)

SUMIF函数的用法说完,剩下的就是直接把区域套上去就可以。
=SUMIF(INDIRECT($A2&"!b:e"),COLUMN(A1)&"",INDIRECT($A2&"!c:f"))
其实每个函数都不难,难在于每个函数的灵活运用,打破你的固定思维。
来源:Excel不加班(ID:Excelbujiaban),由中国ACA网【www.aca.cn】整理发布,若需引用或转载,请注明来源!
向作者提问
|