If statement 给出值的If语句错误

If statement 给出值的If语句错误,if-statement,excel-formula,If Statement,Excel Formula,我试图比较两个数据范围,以确定它们是否相同 我使用下面的语句,得到一个#值错误消息: =IF(SUM(ABS(B2:E7-G2:J7))=0,"Same", "Not") 您的答案中是否有字符串,或者第1行或第8行中是否有公式?如果是,这可能就是原因,因为假设你 按ctrl+shift+enter,然后单击 只有范围内的数字 要获得一般解决方案,请尝试 {=IF(AND(B2:E7=G2:J7),"Same","Not")} 不要忘记按ctrl+shift+enter,否则它将只查看公式

我试图比较两个数据范围,以确定它们是否相同

我使用下面的语句,得到一个
#值错误消息:

=IF(SUM(ABS(B2:E7-G2:J7))=0,"Same", "Not")

您的答案中是否有字符串,或者第1行或第8行中是否有公式?如果是,这可能就是原因,因为假设你

  • 按ctrl+shift+enter,然后单击
  • 只有范围内的数字
要获得一般解决方案,请尝试

{=IF(AND(B2:E7=G2:J7),"Same","Not")}

不要忘记按ctrl+shift+enter,否则它将只查看公式本身所在的行

如果您想知道两个范围内的数字的算术总和是否相同,那么这个标准公式应该可以

=IF(SUM(B2:E7)-SUM(G2:J7), "Not", "Same")
Excel中的零计算为布尔值FALSE。任何不虚假的东西都是真实的

这并不确定每个细胞是否直接对应于另一范围内的“姐妹”细胞;只是每一个的总和是否相等。不同单元格中的值可以互换,或者巧合地以完美的比例相互抵消,以产生相等的总和

如果需要逐单元分析,则可以提供更复杂的公式

=IF(SUMPRODUCT(--(B2:E7=G2:J7))=24, "Same", "Not")

24是每个范围内的单元格总数。虽然这不需要Ctrl+Shift+Enter,但a会生成循环计算。

需要切换“不”和“相同”,还建议将手动计算的单元格计数
24
替换为
count(B2:E7)
然后公式变为:
=IF(SUMPRODUCT(--(B2:E7=G2:J7))=count(B2:E7),“相同”,“不”)
@EEM-在不同/相同的地方捕捉到了不错的猎物。谢谢COUNT/COUNTA不会对空白单元格进行计数,但SUMPRODUCT会将一个空白单元格计数为另一个空白单元格,因此除非您使用COUNTBLANK调整COUNT/COUNTA,否则它将不准确。但是,如果通过公式返回长度为零的字符串(例如,
),则COUNTA和COUNTBLANK都将对其进行计数,但SUMPRODUCT仅计数一次。这就是为什么我把它作为一个硬编码的计数。我明白你的意思,确实有道理。我在测试中没有包括空白单元格,因为我只考虑数字,但事实上SUMPRODUCT会比较所有内容(即数字和字符串)。实际上,要生成该范围内的单元格数量,必须使用类似于
行(B2:E7)*列(B2:E7)
的方法,我将仅对插入行\列的范围使用该方法,以确保公式保持有效。谢谢你的解释\提醒…@EEM-我认为像
行(2:7)*列(B:E)
这样的东西最终将是最好的通用选项。它应该针对行/列的插入/删除进行调整,并避免用户承担数学责任。要避免硬编码24,请尝试
=IF(SUMPRODUCT(--(B2:E7G2:J7))=0,“相同”,“不”)