![无法理解公式的逻辑](https://linux22.com/image/1423676/%E6%97%A0%E6%B3%95%E7%90%86%E8%A7%A3%E5%85%AC%E5%BC%8F%E7%9A%84%E9%80%BB%E8%BE%91.png)
我有两个单元格,我想编写一个公式来检查两个条件,如果满足任一条件,则返回“错误”。条件是;
1. 两个单元格都是空的吗?
2. 两个单元格都不为空吗?
(仅当其中一个单元格为空并且另一个单元格包含某些内容时才返回 OK。
到目前为止我已经尝试了以下方法;
=IF(X25=""*AD25=""+X25<>""*AD25<>"","Error","OK")
并且;
=IF(X25=""*AD25="","Error",IF(X25<>""*AD25<>"","Error","OK")
无论是哪种尝试,我都会遇到#VALUE
错误。
答案1
使用一些条件公式, 像这样 -
=IF(AND(A17<>"",B17<>""),"ERROR",IF(OR(A17<>"",B17<>""),"OK","ERROR"))
答案2
您应该尝试使用COUNTA()
公式。它计算给定范围内的非空单元格。
=IF(COUNTA(X25,AD25)=1,"OK","Error")
答案3
根据您对最终结果的描述,CallumDS33 的答案非常好。但是,如果您想要类似您尝试过的东西,这里有一个简短而棘手的方法:
=IF((X25="")=(AD25=""), "Error", "OK")
换句话说:
- 检查是否
X25
为空白。 - 检查是否
AD25
为空白。 - 如果上述条件计算结果为相同的布尔值(即都为 TRUE 或都为 FALSE),则报告“Error”,否则报告“OK”。