问与答99:如何根据组合条件求和?

2021-03-12 17:02:23 浏览数 (2)

excelperfect

Q:如下图1所示的数据排列,每组数据都由“月份、分类、字母、数值”组成,但是月份在单独的行,其他的数据分布在各行中且存在重复。

图1

现在,要求每组数据中各字母对应的数值之和,如下图2所示。

图2

怎么使用公式根据单元格区域B2:G11中的数据得到单元格区域J14:P15中的值?

A:有多个公式可以实现。

公式1:在单元格J14中输入公式:

=SUMIFS(OFFSET(A3:A11,0,MATCH(I14,B2:G2,0) 2),OFFSET(A3:A11,0,MATCH(I14,B2:G2,0) 1),J

然后向左向下复制到单元格区域J14:P15。

公式2:在单元格J14中输入数组公式

=SUM(IF((B2:E2=I14)*(C3:F11=J13),D3:G11,""))

然后向左向下复制到单元格区域J14:P15。

公式3:在单元格J14中输入公式:

=SUMPRODUCT((B2:E2=I14)*(C3:F11=J13),D3:G11)

然后向左向下复制到单元格区域J14:P15。

这三个公式都能实现想要的结果,只是复杂程度不同。公式的运行原理相对来说不是很复杂,你可以结合“公式求值”功能来自已研究。

当然,我们也可以先对单元格区域B2:G11中的数据进行整理,使得每行中都包含月份、分类、字母和数值,这样就可以使用数据透视表来实现。此外,也可以使用VBA代码来获得相同的结果。有兴趣的朋友可以试试。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

0 人点赞