admin管理员组文章数量:1567522
2024年7月8日发(作者:)
在平常运用函数的过程中常常会碰到以下内容,就是敲入函数却返回诸如:#N/A,
#VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, or #NULL!
这样一些错误值,如何办呢?今天咱们就开始讨论这个话题。
一般来讲这样的一些函数都会与IF函数挂钩在一起,如=IF(ISERR())等等,下
面还是通过例子来讲解比较容易理解。
A3 = FIND("b","He's metrosexual") -- 在第二个参数中没有字符"b", 所以
Find函数找不到, 结果就不是一个数字, 而是 "#VALUE!" (错误值)
A4 = IF(a*1>0,">0","<=0") -- "a"是字符, a*1导致出错, 所以结果是#NAME?
A5 = NA() -- 函数NA()是生成一个NA值 (#N/A)
FIND和IF的例子
#VALUE! =C2=FIND("b","He's metrosexual")
#NAME? =IF(A*1>0,">0","<=0")
#N/A =NA()
看到上面这么多的错误值,怎么区分呢?其实大家不用那么用心去记住这样的一
些值。常用的也无非是::#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, or
#NULL!
只要记住:
判断是否是 #N/A 我们就用 “ISNA"
是否是其他错误(#VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, or #NULL! )我
们就用 “ISERR”
如果这样都懒得记, 就记住全部错误都可以用 “ISERROR”来判断
以下来详细的讲解这三个函数的用法:
他们的用法都是一样的. 非常简单, 只有1个参数, 这个参数可以是单元格的
引用或者一段公式, 当然也可以是一个值. 结果是TRUE或者FALSE.
ISNA () : 如果参数的结果为#N/A, 则结果TRUE, 否则结果是FALSE
ISERR() : 如果参数的结果是(#VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, or
#NULL! ), 则结果是TRUE, 否则结果是FALSE
ISERROR() : 如果参数的结果是(#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!,
#NAME?, or #NULL! ), 则结果是TRUE, 否则结果是FALSE
所以“ISERR”和“ISERROR”的区别就是:“ ISERROR”比“ISERR”函数多判
断一个"#N/A"值 (也就是说: = ISERR(NA()) 的结果是FALSE; 而 =
ISERROR(NA())的结果是TRUE. 而ISNA就只能判断参数是不是#N/A.
下面我们来看看几个例子
例子1: 如下表, A9-A12为4个员工的名字, 现在需要找出名字中有"王"的员工,
并且在B列中显示"有王", 否则显示"没有王".
我们一步步来, 首先, 我们先用Find函数查找"王": = FIND("王", A9) , 然后往下
拖一下, 就看到如下的结果:
很明显, 大家可以看到其中两个员工名字里面有王, 另外两个没有. 所有Find
函数就得出了错误的结果(因为找不到) #VALUE! 这个结果我们可以用ISERR
函数来判断. 如果是错误值则说明没有找到, 则显示"没有王", 否则说明找到
了, 显示"有王". 所以函数就可以这么写:
B9 =IF(ISERR(FIND("王",A9)),"没有王","有王") ; 结果如下:
我们来解读一下这个函数 (如下): 如果Find函数没有找到"王"这个字, 则会
出错, 所以ISERR()函数的结果就会是TRUE, 即执行第二个参数, 显示"没有王
".
版权声明:本文标题:#VALUE!, #REF!, #DIV0!, #NUM!, #NAME, or #NULL!函数 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1720450387a824890.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论