急!Excel的多条件求和,如有条件为空就不能计算?怎么修复?

Excel学习世界 2022-10-13 15:15:03

有网友求助:对区域中的多条件求和,自己所设的公式只有在所有条件都出现的情况下才出结果,如果有条件缺失,求和结果就会为 0,这该怎么纠错?

案例:

下图 1 是某公司的销售记录,请以前三列为条件,设置求和公式。效果如下图 2 所示。

解决方案:

1. 将数据表除标题外的所有区域都复制粘贴到另一个工作表。

2. 选中 A 列 --> 选择菜单栏的“数据”-->“删除重复值”

3. 在弹出的对话框中选择“以当前选定区域排序”--> 点击“删除重复项”

4. 点击“确定”

5. 点击“确定”

6. 重复同样的步骤给另外两列也去除重复值。

7. 回到源数据表的工作表,在下方复制粘贴相同的标题。

* 其实是非常不建议将两个表格上下或左右排布的,因为当数据行列变化时容易相互影响。此处为了便于大家查看,我才放在下面,实际工作中建议放在另一个工作表中。

8. 选中 A30 单元格 --> 选择菜单栏的“数据”-->“数据验证”-->“数据验证”

9. 在弹出的对话框的对话框中选择“设置”选项卡 --> 按以下方式设置 --> 点击“确定”:

允许:选择“序列”

来源:选择 A 列的数据区域

下拉菜单设置好了。

10. 用同样的方式设置另外两个下拉菜单。

11. 在 D30 单元格中输入以下公式:

=SUMIFS(D2:D25,A2:A25,"*"&A30,B2:B25,"*"&B30,C2:C25,"*"&C30)

公式释义:

sumifs 的用法老读者都不陌生,语法为 SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2, 条件2], ...);对满足所有条件的区域求和;

为什么每个条件前都有一个 "*"& 呢?& 是个连接符,相当于在每个条件前加上通配符“*”,这样就能在下拉菜单中有空单元格的时候,条件会成为“*”,即整个区域都符合条件;如果没有“*”号,则该条件为空,那么最后 sumifs 判断某个条件不符合,从而最终结果会为 0。

现在就不怕了,有空单元格,也能多条件求和。

12. 这个求和公式还可以简化如下:

=DSUM(A1:D25,4,A29:C30)

公式释义:

DSUM 是个数据库函数,语法为 DSUM(数据库区域, 要计算的列, 包含指定条件的单元格);

第三个参数中的标题必须与数据库的标题一致

同样有空值也能计算出结果。除非条件有错结果才会为 0,比如“销售一部”中没有“王富贵”,如果同时选了这俩条件,求和结果就会为 0。

0 阅读:54

Excel学习世界

简介:Excel 学习交流