1 试图做: sum=(c5-c4) (eks: 10000 - 2300 =7700) 这工作正常,但如果c5不包含值,Excel将根据c4中的值显示负数。 有没有一种简单的方法可以只在它们有值的情况下对单元格求和? microsoft-excel — bervid source
2 你可以试试这个黑客 =IF(AND(B5>0,B4>0), B5-B4,B4) 这将查看下一个单元格值和前一个单元格值,如果其中一个或另一个不存在(或者为0或更小),则显示上一个单元格的值或0 ,另一方面,它做数学。 另一个选择是检查值是否小于0(不确定这是否适用于您的情况),如果是,请将其设为正值,例如: =IF(B8-B7>0, B8-B7, (B8-B7)*-1) — Dave source 如果您将负数作为有效输入,则两者都不起作用 — gt6989b
2 也许如果你想要一个允许负数的更通用的解决方案,你可以直接测试数字输入: IF( AND(ISNUMBER(C6),ISNUMBER(C5)), C6-C5, "") — gt6989b source
2 没有理由与AND()进行长时间的比较。您只想在两个单元格都包含值时运行公式,请尝试 =if(count(c4:c5)=2,c5-c4,"") 在大多数情况下,检查每个单元格是否大于零的先前建议可能会返回相同的结果。但是有区别。 例如,如果其中一个单元格合法地包含0或负数,那么您将看不到数字作为结果。 但是,Count()只计算有多少个单元格包含数字。公式将返回计算结果,只有两个单元格中有两个数字,无论它们的值如何。 — teylyn source
0 此外 戴夫鲁克 的&amp; gt6989b 回答,这里有几个公式,检查两个单元格在获取总和之前是否有值。如果任一单元格为空,则公式不执行总和。 =IF(AND(C4<>"",C5<>""),C5-C4,"") =IF(OR(ISBLANK(C4),ISBLANK(C5)),"",C5-C4) — Ellesa source