公式中,有的用isna,有的用iserr,有的用iserror,那么这三者到底有什么区别呢?

接下来就由我给大家详细介绍下

一、要区别这三个函数的不同,我们首先要了解Excel中各种错误形式,以及产生的原因

1、#NULL!

使用了不正确的运算符,使引用的区域不相交

公式中使用了交叉运算,而两区域A1:A16和A18:E18并不相交。

2、#DIV/0!

使用对空白单元格或包含零的单元格的引用作除数

例:=3/0

3、#VALUE!

当公式需要数字或逻辑值(例如 TRUE 或 FALSE)时,却输入了文本;

输入或编辑了数组公式,然后按了 Enter;

将单元格引用、公式或函数作为数组常量输入;

为需要单个值(而不是区域)的运算符或函数提供了区域

4、#REF!

引用了无效的单元格或单元格区域

例:=Index({1,2},3)

=a1,再把a1单元格删除。

5、#NAME?

引用了未知名的函数或名称

例:=Summ(a1:a10),输入公式(Sum)时误多录入一个m。

6、#NUM!

公式或函数中使用无效数字值时,出现这种错误。

例:=Date(-1,1,1)年份数-1是无效的数字值。

7、#N/A

值不存在,一般由VLOOKUP/HLOOKUP/LOOKUP/MATCH函数生成

例:=MATCH(3,{1;4;7},-1),最后一个参数应为1或省略。

excelcode函数使用教程(每日一篇-excelisnaiserr)(1)

二、isna、iserr、iserror三者的区别

1、isna函数

判断一个值是否为#N/A,正确返回TRUE,否则FALSE

=ISNA(value)

例子

excelcode函数使用教程(每日一篇-excelisnaiserr)(2)

2、iserr函数

检查一个值是否为#N/A以外的错误值(#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME!、#NULL!),参数:value为错误值时返回TURE,否则返回FALSE。

=iserr(value)

value指的是要测试的值; 可以是空白(空单元格)、错误值、逻辑值、文本、数字等。

例子

excelcode函数使用教程(每日一篇-excelisnaiserr)(3)

ISERROR(expression),表示一个数值表达bai式是否错误。若参数du(expression)错误,则函zhi数表示TRUE,反正为FALSE;可以检测所有类型的错误值。

ISERROR(value)

value指的是要测试的值; 可以是空白(空单元格)、错误值、逻辑值、文本、数字等。

例子

excelcode函数使用教程(每日一篇-excelisnaiserr)(4)

总结

sna一般是因为值不存在而产生的错误,如VLOOKUP/HLOOKUP/LOOKUP/MATCH,lookup_value参数值不适当,或找不到该值

iserr:除na()以外其他错误值

iserror:所有错误值

,