一个关于SUMPRODUCT的应用问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 12:44:02
我写了这么一个函数某格
=SUMPRODUCT((Sheet1!$F2:$F5="缺")*Sheet1!$H2:$H5)
sheet1中F列的内容有:缺、全两个选项
sheet1中的H列的公式如果采用“=IF(OR(F2="全",F2="缺"),D2/I2,"")”的话为真计算D2/I2,为假输出空值,则上面那个函数出不来数;如果采用“=IF(OR(F2="全",F2="缺"),D2/I2,)”的话就能出来,但是这样的话H列为假的时候会输出“0”,可我又想为假的时候不输出任何东西,请问应该怎么处理呢?
还有,我最上面那个公式设置了范围是从2行到5行的,我想要计算全表格范围内的数据又应该怎么填写呢?
=SUMPRODUCT((明细表!F:F="缺")*(明细表!J:J=1)*明细表!H:H)写成这样出不来值啊
=SUMPRODUCT((明细表!$F$2:$F$9994="缺")*(明细表!$J$2:$J$9994=1)*明细表!$H$2:$H$9994)写成这样就可以……为什么

第一个问题用工具-选项-视图,取消零值的勾。 解决了恩恩
F列还有其他值……

一般的解决办法。H列的公式=IF(OR(F2="全",F2="缺"),D2/I2,),并设置工作表不显示0值。工具-选项-视图,取消零值的勾。
如果F列只有缺、全和空格3种情况,公式可以改为=IF(F2="",,D2/I2)。
如果公式非要用空格,救和公式改为=SUMPRODUCT(($F2:$F5="缺")*IF($H2:$H5="",,$H2:$H5)),不过这个是数组公式,需要按Ctrl+Shift+Enter结束公式输入。
如果将公式改为=SUMIF(F:F,"缺",H:H),即能解决前一个问题,也能解决后一个问题。

SUMPRODUCT函数不能以整列的方式引用,即不能写成F:F,全列只能写成$F$2:$F$65536