如何在sumproduct中得到excel忽略除0?

时间:2016-12-21 20:02:37

标签: excel zero

我有一个总和产品,我需要划分,所以其中一个输入是1/AL:AL。问题是其中一些单元格为0.我尝试了1/if(AL:AL=0,1,AL:AL)iferror(1/AL:AL,1),但两者仍然返回#DIV/0!。这是我的实际公式:

=SUMPRODUCT('Data'!$I:$I,'Data'!$AV:$AV,**1/'Data'!$AL:$AL**)

2 个答案:

答案 0 :(得分:1)

这应该适合你:

=SUMPRODUCT(Data!$I:$I,Data!$AL:$AL*(Data!$AV:$AV<>0)/((Data!$AV:$AV=0)+(Data!$AV:$AV<>0)*Data!$AV:$AV))

但是,我强烈建议永远不要对数组公式或计算数组的函数使用完整列引用。 Sumproduct是一个计算数组的函数,使用整列引用可能对工作簿的速度和效率非常不利。始终尽量使用有限的范围,例如调整后的公式可能如下所示:

=SUMPRODUCT(Data!$I$1:$I$10,Data!$AL$1:$AL$10*(Data!$AV$1:$AV$10<>0)/((Data!$AV$1:$AV$10=0)+(Data!$AV$1:$AV$10<>0)*Data!$AV$1:$AV$10))

如果您使用整列参考来获取输入的新数据,请考虑使用dynamic named rangestable references

答案 1 :(得分:0)

如果您将公式作为数组公式输入,并且光标位于公式栏中,按IFERROR(1/AL:AL,1),则CTRL+SHIFT+ENTER的公式应该有效。