如何在Excel电子表格中识别“#VALUE!”?

78

我想写一个公式,使得如果单元格A1显示#VALUE!,则在单元格B1中显示TRUE

这是我在单元格B1中的公式:

=IF(A1="#VALUE!", "TRUE", "FALSE")

当单元格A1中没有出现#VALUE!时,我得到的是FALSE,这部分是正确的。但是,当单元格A1中出现#VALUE!时,在单元格B1中会出现#VALUE!错误,而我希望它显示为TRUE。我该怎么做?


1
忘了提到,在单元格A1中的#VALUE错误是由另一个公式引起的...我不是在寻找字符串“#VALUE”。 - MrPatterns
3个回答

128

Use IFERROR(value, value_if_error)


2
做得非常好,谢谢!我选择了你的答案,因为你既正确又第一个回答。 - MrPatterns
哈哈,谢谢。我的打字速度很快,但是例子有点不够。 - Charleh

47

这会返回TRUE#VALUE!错误(ERROR.TYPE = 3),对于其他情况返回FALSE

=IF(ISERROR(A1),ERROR.TYPE(A1)=3)

9
值得注意的是,这个公式可以在XL 2007之前的版本中使用,并且由于只针对#VALUE!错误,它将避免掩盖其他错误。 这里有一个关于IFERROR的有趣讨论:http://www.dailydoseofexcel.com/archives/2012/04/18/is-iferror-bad/ - Doug Glancy

0
在EXCEL 2013中,我必须使用IF函数2次: 第一次使用ISERROR来识别错误, 第二次使用ERROR.TYPE=3来识别特定类型的错误,以便解决此类错误。这样,您可以区分所需的错误和其他类型的错误。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接