如何修复 VLOOKUP 等 Excel 公式中的 #N/A 错误


当您输入值或尝试执行它无法理解的操作时,Microsoft Excel 可能会返回错误。错误有多种类型,每种错误都与您可能犯的特定类型的错误相关。

#N/A 错误是标准 Excel 错误。当您错误地引用数据时,就会出现这种情况。例如,引用的数据不存在或存在于查找表之外,在查找值中出现拼写错误,或者在查找值中添加了额外的字符(逗号、撇号,甚至空格字符)。

由于错误是在您错误地引用查找值时发生的,因此它最常与查找函数(例如 LOOKUP、VLOOKUP、HLOOKUP 和 MATCH 函数)相关。让我们看看 #N/A 错误的原因、示例和一些修复。

#N/A 错误的原因

以下是可能导致工作表上出现 #N/A 错误的原因:

  • 您拼写错误了查找值(或插入了额外的空格字符)
  • 您在查找表中拼错了一个值(或插入了额外的空格字符)
  • 公式中输入的查找范围不正确
  • 您对查找值使用了与查找表中存在的数据类型不同的数据类型(即使用了 文本而不是数字
  • 在查找表中找不到您输入的查找值
  • #N/A 错误示例

    让我们以使用VLOOKUP函数 为例,了解使用 LOOKUP、HLOOKUP 或 MATCH 等 Excel 函数后如何可能会出现 #N/A 错误,因为它们共享相似的语法结构。

    例如,假设您在 Excel 工作簿中列出了一长串员工及其奖金。

    您使用 VLOOKUP 公式,输入要为其插入单元格引用(单元格 D4)的相关[lookup_value],定义[table_array](A2:B7 ),并定义[col_index_num](2)。

    对于名为“[range_lookup]”的最后一个参数,您应该使用 1(或 TRUE)来指示 Excel 获取精确匹配。将其设置为 2(或 FALSE)将指示 Excel 查找近似匹配,这可能会给出不正确的输出。.

    假设您已经设置了一个为选定的少数员工获取奖金的公式,但您拼错了查找值。您最终会收到 #N/A 错误,因为 Excel 无法在查找表中找到与该值完全匹配的值。

    那么,您必须采取什么措施来修复此错误?

    如何修复 #N/A 错误

    有多种方法可以解决 #N/A 错误,但修复主要可分为两种方法:

    1. 更正输入
    2. 捕获错误
    3. 更正输入

      理想情况下,您应该使用本教程前面列出的原因来确定错误的原因。修复原因将确保您不仅能消除错误,还能获得正确的输出。

      您应该首先使用本指南中列出的原因作为清单。这样做将帮助您找到需要修复的错误输入以消除错误。例如,它可能是拼写错误的值、多余的空格字符或查找表中数据类型不正确的值。

      捕获错误

      或者,如果您想要只是消除工作表中的错误,而不需要单独检查错误,则可以使用多个 Excel 公式。有些函数是专门为捕获错误而创建的,而其他函数则可以帮助您使用多个函数构建逻辑语法来消除错误。

      您可以使用以下函数之一捕获 #N/A 错误:

      • IFERROR 函数
      • IFNA功能
      • ISERROR 函数和 IF 函数的组合
      • 修剪功能
      • 1。 IFERROR 函数

        创建 IFERROR 函数的唯一目的是更改返回错误的单元格的输出。

        使用 IFERROR 函数,您可以输入希望单元格显示的特定值而不是错误。例如,如果使用 VLOOKUP 时单元格 E2 中出现 #N/A 错误,则可以将整个公式嵌套到 IFERROR 函数中,如下所示:.

        IFERROR(VLOOKUP(E4,B2:C7,2,1),“未找到员工”

        如果 VLOOKUP 函数出现错误,它将自动显示文本字符串“Employees not find”而不是错误。

        如果您想在公式返回错误时显示空白单元格,也可以通过插入两个引号 (“”) 来使用空字符串。

        请注意,IFERROR 函数适用于所有错误。因此,例如,如果嵌套在 IFERROR 函数中的公式返回 #DIV 错误,IFERROR 仍会捕获该错误并返回最后一个参数中的值。

        2. IFNA功能

        IFNA 函数是 IFERROR 函数的更具体版本,但工作方式完全相同。这两个函数之间的唯一区别是 IFERROR 函数捕获所有错误,而 IFNA 函数仅捕获 #N/A 错误。

        例如,如果出现 VLOOKUP #N/A 错误,则以下公式有效,但如果出现 #VALUE 错误,则无效:

        IFNA(VLOOKUP(E4,B2:C7,2,1),“未找到员工”

        3. ISERROR函数和IF函数的组合

        捕获错误的另一种方法是结合使用 ISERROR 函数和 IF 函数。它的工作原理本质上类似于 IFERROR 函数,因为它依赖 ISERROR 函数来检测错误,并依赖 IF 函数根据逻辑测试呈现输出。

        该组合适用于所有错误,例如 IFERROR 函数,而不仅仅是 #N/A 函数。以下是使用 IF 和 ISERROR 函数捕获 Excel VLOOKUP #N/A 错误时的语法示例:

        =IF(ISERROR(VLOOKUP(E4,B2:C7,2,1)),VLOOKUP(E4,B2:C8,2,1),“未找到员工”)

        4。 修剪功能

        我们之前讨论过,在查找值中无意插入的空格字符可能会导致 #N/A 错误。但是,如果您的工作表中已填充一长串查找值,则可以使用 TRIM 函数,而不是单独从每个查找值中删除空格字符。

        首先,创建另一列,使用 TRIM 函数修剪名称中的前导和尾随空格:.

        然后,使用新的名称列作为 VLOOKUP 函数中的查找值。

        修复宏中的 #N/A 错误

        没有可用于修复宏中的 #N/A 错误的特定公式或快捷方式。由于您可能在 创建宏时 中添加了多个函数,因此您需要检查每个函数使用的参数并验证它们是否正确,以修复 maco 中的 #N/A 错误。

        #N/A 错误已修复

        一旦您了解导致错误的原因,修复 #N/A 错误并不那么困难。如果您不太关心输出并且只是不希望公式导致错误,您可以使用 IFERROR 和 IFNA 等函数来轻松解决 #N/A 错误。

        .

        相关文章:


        27.04.2022