2017-04-21 122 views
0

我得到单元格数组(A1-D1)之间的平均百分比变化。单元格A11是=COUNT(1:1)-1(以获取实际包含任何内容的单元格的数量)。我用来获得平均值的公式是=SUMPRODUCT(OFFSET(B1,,,,A11)/OFFSET(A1,,,,A11))/A11-1,0)(在另一个论坛上的某个人帮我解决了这个问题)。这在大多数情况下工作正常。问题是,一些单元格 - 比方说A1和B1 - 包含“0”。这会导致“除以零”错误。有没有办法从计算中排除任何包含零的单元格?谢谢!如何排除包含“0”的公式中的计算单元格?

+0

也许你可以用1替换0的值,它不会影响除法。 –

回答

0

尝试使用此公式来忽略会给出#DIV/0的单元格!错误

=SUM(IFERROR(OFFSET(B1,,,,A11)/OFFSET(A1,,,,A11),0))/SUM(--ISNUMBER(OFFSET(B1,,,,A11)/OFFSET(A1,,,,A11))) 

分子中的IFERROR将零的结果设置为零。

分母中的ISNUMBER对所有不为零的分部给出TRUE,并且这由 - 转换为'1'。

的公式必须输入作为使用Ctrl键阵列式移位输入

EDIT

=SUM(IFERROR(OFFSET(B1,,,,A11)/OFFSET(A1,,,,A11),0))/COUNTIF(OFFSET(A1,,,,A11),"<>0") 

给出相同的结果,并且是更短的(注意,如果最后的数字即D1为零,则不会得到#DIV/0!错误)。

就像问题一样,这里假设数字之间没有空单元 - 否则你不能使用COUNT和OFFSET来获得范围。

enter image description here

相关问题