问个Excel计算问题,请高手指点~~~ 不止归宿,暂时这里发一贴
495 3
[1 楼] shoppo0505 [资深泡菜]
10-2-3 04:36
单元格函数如下:
=IF(OR(ISERROR(F2/(E2*$H$2)),(F2/(E2*$H$2))=0),"",F2/(E2*$H$2))

现在的状况是:
1. 如果F2/(E2*$H$2)等于0的话,单元格不显示内容, 符合要求
2. 如果F2/(E2*$H$2)中E2*$H$2=0的话,单元格就会显示 #DIV/0!.不符合要求

请问,单元格函数有什么错误么?
如何纠正状况2的错误,使单元格不显示内容?

已经测试过单元格函数:
=IF(ISERROR(F2/(E2*$H$2)),"",F2/(E2*$H$2))
符合要求,但是添加 OR函数和附件条件(F2/(E2*$H$2))=0以后,出错.

请高手指点.

[shoppo0505 编辑于 2010-02-03 04:37]
[4 楼] cw030115 [资深泡菜]
10-2-3 19:53
原文由 shoppo0505 在2010-02-03 15:55发表

难道 #DIV/0! 只是判断分母是否为0么?不是直接判断结果的吗?
这样的话,为什么后面那个函数没有出错呢?

不懂了。
不过谢谢提醒,继续看看

[shoppo0505 编辑于 2010-02-03 15:58]

一般编程时,IF函数返回的应该是个逻辑值吧("T"or"F")。
在EXCEL里成了一个选择开关,导致#DIV/0!错误的根本原因是E2*$H$2=0,也就是分母为0,计算法则出错,EXCEL算到这里时过程就终止了,不再执行下一步过程,不管是什么函数。

[cw030115 编辑于 2010-02-03 19:56]
[3 楼] shoppo0505 [资深泡菜]
10-2-3 15:55
原文由 cw030115 在2010-02-03 14:14发表
经常用EXCEL,但对复杂的公式计算仅了解些皮毛,
#DIV/0!的提示应该是除数是0错误,所以“E2*$H$2=0”时提示,F2/(E2*$H$2)=0时没有错误,建议安装完整版的EXCEL,按F1帮助文件研究研究。


难道 #DIV/0! 只是判断分母是否为0么?不是直接判断结果的吗?
这样的话,为什么后面那个函数没有出错呢?

不懂了。
不过谢谢提醒,继续看看

[shoppo0505 编辑于 2010-02-03 15:58]
[2 楼] cw030115 [资深泡菜]
10-2-3 14:14
经常用EXCEL,但对复杂的公式计算仅了解些皮毛,
#DIV/0!的提示应该是除数是0错误,所以“E2*$H$2=0”时提示,F2/(E2*$H$2)=0时没有错误,建议安装完整版的EXCEL,按F1帮助文件研究研究。