excel公式求助,条件加和

2024-11-22 08:52:27
推荐回答(2个)
回答1:

公式:
=SUMPRODUCT((LEFT(A:A,2)="01")*(B:B))
为了提升公式的执行效率,最好限定一下公式的区域范围,改为:
=SUMPRODUCT((LEFT(A2:An,2)="01")*(B2:Bn)),其中n为最后一行数据的行号。

回答2:

  • 使用SUMIF()公式的单条件求和:

    如要统计C列中的数据,要求统计条件是B列中数据为"条件一"。并将结果放在C6单元格中,我们只要在C6单元格中输入公式“=SUMIF(B2:B5,"条件一",C2:C5)”即完成这一统计。

  • SUM()函数+IF()函数嵌套的方式双条件求和:

    如统计生产一班生产的质量为“合格”产品的总数,并将结果放在E6单元格中,我们用“条件求和”功能来实现:

    ①选“工具→向导→条件求和”命令,在弹出的对话框中,按右下带“―”号的按钮,用鼠标选定D1:I5区域,并按窗口右边带红色箭头的按钮(恢复对话框状态)。

    ②按“下一步”,在弹出的对话框中,按“求和列”右边的下拉按钮选中“生产量”项,再分别按“条件列、运算符、比较值”右边的下拉按钮,依次选中“生产班组”、“=”(默认)、“生产一班”选项,最后按“添加条件”按钮。重复前述操作,将“条件列、运算符、比较值”设置为“质量”、“=”、“合格”,并按“添加条件”按钮。

    ③两次点击“下一步”,在弹出的对话框中,按右下带“―”号的按钮,用鼠标选定E6单元格,并按窗口右边带红色箭头的按钮。

    ④按“完成”按钮,此时符合条件的汇总结果将自动、准确地显示在E6单元格中。

    其实上述四步是可以用一段公式来完成的,因为公式中含有数组公式,在E6单元格中直接输入公式:=SUM(IF(D2:D5="生产一班",IF(I2:I5="合格",E2:E5))),然后再同时按住Ctrl+Shift+Enter键,才能让输入的公式生效。

    上面的IF公式也可以改一改,SUM(IF((D2:D5="生产一班")*(I2:I5="合格"),E2:E5)),也是一样的,你可以灵活应用,不过注意,IF的嵌套最多7层。

    除了上面两个我常用的方法外,另外我发现网络上有一个利用数组乘积函数的,这是在百度上发现的,我推荐一下:

  • SUMPRODUCT()函数方式:

    表格为:

    A    B   C   D

    1 姓名  班 级  性别  余额

    2 张三  三年五  女   98

    3 李四  三年五  男   105

    4 王五  三年五  女   33

    5 李六  三年五  女   46

    现在求求出三年五班女生的总余额。

    公式:=SUMPRODUCT((B2:B5="三年五")*(C2:C5="女")*(D2:D5))

    解释:SUMPRODUCT在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。

    语法 SUMPRODUCT(array1,array2,array3, ...) Array1, array2, array3, ... 为 2 到 30 个数组,其相应元素需要进行相乘并求和。

    在这里((B2:B5="三年五")*(C2:C5="女")*(D2:D5))为一个数组,其中(B2:B5="三年五")*(C2:C5="女")为确定满足准备求和条件的单元格所在的行,*(D2:D5)则是满足求和条件的单元格的范围。

    第三个函数不常用,我对它也不是很了解,为尊重作者原著,我只有把他的内容贴出来,请见谅。

    其实上面的第二个方式(sum函数嵌套if函数)和第三个方式(sumproduct函数)不但可以实现双条件求和,也可以实现三条件求和甚至多条件求和的。只不过函数稍微变更一下的。

  • 4

    SUMIFS函数

    该函数在EXCEL2007中被广泛使用,使用起来更加方便,例如第三个方式中的例子,我们就可以输入公式:“=SUMIFS(D2:D5,B2:B5,"三年五",C2:C5,"女")”,是不是更轻松?