返回目录:excel表格制作
IF(ISERROR(X),"",X)是一个防止报错的经典公式。
(1)函数分析
①ISERROR(X1)的意思是:判断括号内的公式是否出错,如果出错则返回“TRUE”,若没有出错则返回“FALSE”。
②IF函数用来判断ISERROR函数返回的值,如果返回值为“TRUE”即公式出错,那么此时将输出“”,也即输出空值,单元格表现为空白;如果返回值为“FALSE”即公式正确,那么将返回这个公式的计算结果。
(2)举例
比较常见的用法是对于VLOOKUP函数的判断,如IF(ISERROR(VLOOKUP(A1,A1:A10,1,0)),"",VLOOKUP(VLOOKUP(A1,A1:A10,1,0)),该公式的计算步骤为:
①先计算“VLOOKUP(A1,A1:A10,1,0)”,如果这个公式成立,那么ISERROR返回“FALSE”,那么IF函数返回"FALSE"情况下的e68a84e799bee5baa6e997aee7ad94338值,即“VLOOKUP(A1,A1:A10,1,0)”,VLOOKUP函数需要查找返回的值;
②如果“VLOOKUP(A1,A1:A10,1,0)”这个公式不成立,比如常见的情况是在指定查找区域无要查找的值,则此时ISERROR函数返回“TRUE”,那么IF函数返回"TRUE"情况下的值,即“”,此时单元格显示了空值。
③如果不用IF和ISERROR嵌套,直接用VLOOKUP函数嵌套,那么当VLOOKUP不成立时,单元格就会出现“#N/A”报错提示,影响文档效果。
扩展资料:
VLOOKUP函数语法:
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)Lookup_value 为需要在数据表第一列中查找的数值。
Table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用。
Col_index_num 为table_array中待返回的匹配值的列序号。
Range_lookup 为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。如果为TRUE或省略,则返回近似匹配值。
参考资料:百度百科 IsError
公式中x应该是一个类似match,lookup,vlookup之类的zhidao函数或者公式,为了保证查找时没有匹配的就填入空格,否则就返回查找值
如b2 =if(iserror(vlookup(a2,sheet2!a:b,2,false)), "",vlookup(a2,sheet2!a:b,2,false))就表示在本表中版b2单元格为表sheet2中首列与a2单元格相等的行对应b列值,如果没有就为""
类似用法还有很多,主要考虑x所代表的公式在什么情况下返回错误值(可以查权函数语法知道)
语法:ISERROR(expression),表示一个数值表达式是否错误百。若参数(expression)错误,则函数表示TRUE,反正为FALSE。
ISERROR(参数)函数主要用于判断运行结果是否错误。常用于一度些出错的公式中。
举例,函数vlookup使用当在搜索区域找不到响应值,此时出现“#N/A”的错误值。
例子:=vlookup(“苹果”,A:B,2,0),当A序列中没有“苹果”这个内容,公式判断结果为“#N/A”的错误值。
此时加入ISERROR函数,就可版以避免出现“#N/A”的错误值而变为一个空值。
公式:=IF(ISERROR(VLOOKUP("苹果",A:B,2,0)),"",VLOOKUP("苹果",A:B,2,0)) 。
为避免出现累加空值,也可添加if函数,如 =IF(ISERROR(VLOOKUP("苹果",A:B,2,0)),"0",VLOOKUP("苹果",A:B,2,0))。
这样就可以把“空值”改权为“零“值了。