MICROSOFT

EP01. “IfError IFERROR 函数”

首页 Microsoft 工具 Excel · Functions · Formula Errors · EP01
约 4 分钟· #EP01#Excel#Formula Errors
🔒 登录后可标记已读
  • IFERROR 用来「拦截」公式算出来的错误,改用你指定的替代结果取代原本丑陋的错误代码
  • 讲基础用法和搭配 VLOOKUP 的常见场景
  • 前置知识不多
  • 学完能让表格在出错时不再直接显示 #DIV/0!、#N/A 这类看不懂的代码

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


IFERROR 和 IFNA 怎么选

函数拦截范围适合场景
IFERROR拦截所有类型错误不在意是哪种错误,只想有替代结果
IFNA(见 EP08)只拦截 #N/A只想处理「查无结果」,不想连公式写错都被悄悄掩盖

基础用法:除以 0 的错误

  1. 一般除法公式 =A1/B1,如果 B1 是 0,会得到 #DIV/0! 错误
  2. 改用 =IFERROR(A1/B1,"error"),遇到错误时会显示 "error" 这段文字,而不是错误代码
  3. 如果公式本身没有错误,IFERROR 会直接返回正常的计算结果

搭配 VLOOKUP:查无结果时显示友善提示

  1. VLOOKUP 找不到匹配项时会返回 #N/A 错误
  2. 用 IFERROR 包住:=IFERROR(VLOOKUP(A1,B1:C10,2,FALSE),"Not found")
  3. 如果 VLOOKUP 有找到匹配项,IFERROR 会直接返回查找到的结果;找不到才会显示 "Not found"

IFERROR 能拦截的错误类型

#DIV/0!#N/A#VALUE!#REF!#NUM!#NAME?#NULL! 都会被 IFERROR 拦截。

[截图:#DIV/0!#N/A#VALUE!#REF!#NUM!#NAME?#NULL! 这几种错误值分别在单元格里显示的样子]


函数速查

函数语法用途例子
IFERROR=IFERROR(value,value_if_error)出错时返回替代结果=IFERROR(A1/B1,"error")

学完你会

  • ✅ 能用 IFERROR 把公式出错时的丑陋错误代码换成友善提示
  • ✅ 能用 IFERROR 包住 VLOOKUP,处理查无结果的情况
  • ✅ 知道 IFERROR 会拦截所有类型错误,只想拦截 #N/A 时该改用 IFNA

常见错误

  • IFERROR 会拦截所有类型的错误,如果只想拦截 #N/A(例如 VLOOKUP 找不到),用 IFERROR 可能会把其他类型的错误(比如公式本身写错)也一起吃掉,不容易发现问题,这种情况该用更精准的 IFNA(见 EP08)
  • 把「error_value」参数写成公式而不是简单的值,导致替代结果本身又出错
  • 过度依赖 IFERROR 掩盖错误,没有回头检查公式本身为什么会出错

Sources

Blog / Website:

  1. IfError