Excel IFNA 函数

17 Mar 2025 | 6 分钟阅读

如果您是 Excel 用户,您可能会知道错误有多烦人且耗时。大多数情况下,当您使用 HLOOKUP、VLOOKUP、MATCH 等函数时,您会遇到 #N/A 错误。当您向同事或管理层展示公式表时,生硬的 #N/A 看起来不专业且杂乱无章。现在问题来了,如何处理这个错误。令您惊讶的是,Excel 也为此提供了解决方案。您可以使用内置的 IFNA Excel 函数将 #N/A 错误替换为您的自定义消息。

什么是 IFNA 函数?

Excel IFNA 函数是微软引入的,专门用于捕获和管理工作表中的 #N/A 错误,而忽略其他错误。如果 Excel 在函数中找到任何 #N/A 错误值,此函数将返回您指定的自定义消息;否则,在没有错误的情况下,IFNA 将返回公式的结果。

您可以使用 IFNA 函数来专门捕获和处理可能出现在执行查找公式(如 MATCH、VLOOKUP、HLOOKUP 等)的函数中的 #N/A 错误,而不是使用 IFERROR 函数(它会捕获所有类型的错误)。每当 Excel 捕获任何 #N/A 错误时,IFNA 函数都会返回自定义输出,而且好的一点是,如果您的工作表中未检测到错误,它会返回正常输出。请注意,IFNA 函数只会处理 #N/A 错误,所有其他 Excel 错误仍将显示在您的 Excel 工作表中。 IFNA 函数属于 Excel 逻辑函数类别。

注意:Microsoft Excel 在 Excel 2013 版本中引入了 IFNA 函数,因此如果您使用的是较旧的 Excel 版本,您可能找不到此函数。

语法

参数

  • 值(必需)- 此参数表示您要检查是否存在 #N/A 错误的文本值。
  • Value_if_error(可选)- 在此参数中,我们指定自定义文本,如果单元格中存在 #N/A 值,该文本将替换错误。

返回

每当 Excel 捕获任何 #N/A 错误时,IFNA 函数都会返回自定义输出,而且好的一点是,如果您的工作表中未检测到错误,它会返回正常输出。

IFNA 函数的注意事项

  1. 如果用户提供“值”或“value_if_na”作为空单元格,IFNA 函数将其视为空字符串值 (“”)。
  2. 如果您在“值”参数中传递数组公式,IFNA 函数将为给定值范围内的每个单元格返回一个输出数组。
  3. IFNA 函数有助于捕获和处理 #N/A 错误,并且在处理大量复杂数据集时非常有用。
  4. 此函数在故障排除时更快,因为它专为特定错误 (#N/A) 而设计,而其他函数如 IFERROR、ISERROR 等则不然。

示例

示例 1:将 A 列除以 B 列,并使用 IFNA 函数显示结果。

当您只想捕获 #N/A 错误时,IFNA 变得非常有用。要使用 IFNA 函数捕获和处理 #N/A 错误,请按照以下步骤操作

步骤 1:添加一个名为“使用 IFNA 的输出”的辅助列

将鼠标光标放在“ColA”旁边的单元格上,并将新列命名为“使用 IFNA 的输出”。

它将看起来与下图相似

Excel IFNA Function

在此列中,我们将键入 IFNA 公式,并捕获不同数据值的 #N/A 错误。

注意:格式化辅助列并将其与第一列匹配,以使您的 Excel 表格更具吸引力。

步骤 2:键入 IFNA 公式

将光标放在第二行并开始键入函数 = IFNA(

它将看起来与下图相似

Excel IFNA Function

步骤 3:插入文本参数

  • 公式首先会要求您输入“值”参数。我们将指定第一个单元格值或传递您要检查 #N/A 错误的单元格引用。在这里,我们的数据单元格引用是 B4,所以我们的公式变为:=IFNA( B4,

它将看起来与下图相似

Excel IFNA Function
  • 在第二个参数中,我们将指定此函数在单元格中找到任何 #N/A 错误时将抛出的自定义消息。在这里,我们提到了“糟糕!错误”,所以我们的公式变为:=IFNA( B4, "糟糕!错误")

它将看起来与下图相似

Excel IFNA Function

步骤 4:IFNA 将返回结果

由于 IFNA 没有找到 #N/A 错误,因此它返回了原始值。当我们为下一行应用公式时,我们将看到如果它遇到 #N/A 错误会发生什么。

它将看起来与下图相似

Excel IFNA Function

步骤 5:将公式拖到其他行以重复

将鼠标光标放在公式单元格上,并将光标指向单元格的右下角。令您惊讶的是,鼠标指针将变为“+”图标。

请参考下图

Excel IFNA Function

将“+”图标拖动到单元格下方。它会将函数复制到所有单元格,并根据单元格更改单元格引用。如下所示,当函数遇到 #N/A 错误时,它由 IFNA 函数处理,并用自定义文本“糟糕!错误”替换“#N/A”并显示它。

它将看起来与下图相似

Excel IFNA Function

就这样;按照上述几个步骤,您可以轻松地将 IFNA 函数应用于 Excel 工作表以处理 # N/A 错误。

示例 2:使用 IFNA 函数查找给定员工的月薪,如果出现 #N/A,则将其更改为 SALARY 中的错误。

员工 ID指定年薪
E0001AVP£80,000
E0002Analyst£50,000
E0003数据科学家#N/A
E0004Analyst£40,000

当您处理用户会跳过不同类型错误的大量复杂 Excel 数据时,IFNA 函数非常方便。要使用 IFNA 函数捕获和处理 #N/A 错误,请按照以下步骤操作

步骤 1:添加一个名为“月薪”的辅助列

将鼠标光标放在“年薪”旁边的单元格上,并将新列命名为“月薪”。

它将看起来与下图相似

Excel IFNA Function

在此列中,我们将键入 IFNA 公式,并捕获不同数据值的 #N/A 错误。

步骤 2:键入 IFNA 公式

将光标放在第二行并开始键入函数 = IFNA(

它将看起来与下图相似

Excel IFNA Function

步骤 3:插入文本参数

  • 公式首先会要求您输入“值”参数。我们将指定第一个单元格值或传递您要检查 #N/A 错误的单元格引用。
  • 由于我们还要找到月薪,所以我们将值除以 12。在这里,我们的数据单元格引用是 D3,所以我们的公式变为:=IFNA( D3/12,

它将看起来与下图相似

Excel IFNA Function
  • 在第二个参数中,我们将指定此函数在单元格中找到任何 #N/A 错误时将抛出的自定义消息。在这里,我们提到了“SALARY 中的错误”,所以我们的公式变为:=IFNA( D3, "SALARY 中的错误")

它将看起来与下图相似

Excel IFNA Function

步骤 4:IFNA 将返回结果

由于 IFNA 没有找到 #N/A 错误,因此它通过将年薪除以 12 返回了月薪。

它将看起来与下图相似

Excel IFNA Function

步骤 5:将公式拖到其他行以重复

  • 将鼠标光标放在公式单元格上,并将光标指向单元格的右下角。它将变成一个“+”图标。
  • 将“+”图标拖动到单元格下方。它会将函数复制到所有单元格,并根据单元格更改单元格引用。如下所示,当函数遇到 #N/A 错误时,它由 IFNA 函数处理,并用自定义文本“SALARY 中的错误”替换“#N/A”并显示它。

它将看起来与下图相似

Excel IFNA Function
下一个主题Excel TRIM 函数