Excel公式与函数应用技巧
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 常见错误的分析与处理

在使用公式和函数计算数据的过程中,容易犯一些错误。本节将主要介绍在Excel中使用公式和函数时的常见错误及其处理方法。

1 解决“####”错误

如果工作表的单元格无法完全显示数据,即列不够宽,或者使用了负日期或时间时,会出现#####错误。

当列宽不足以显示内容时,解决方法是增加列宽或者缩小内容以适合列宽。

当日期和时间为负数时,可通过下面的方法进行解决。如果用户使用的是1900日期系统,那么Excel中的日期和时间必须为正值。

如果需要对日期和时间进行减法运算,应确保建立的公式是正确的。

如果公式正确,但结果仍然是负值,可以将该单元格的格式设置为非日期或时间格式来显示该值。

2 解决“#DIV/0!”错误

当数字除以零(0)时,会出现#DIV/0!错误。例如用户在某个单元格中输入函数式:=A1/B1,当B1单元格为“0”或为空时,确认后函数式将返回上述错误。

遇到这类错误,解决办法是修改引用的空白单元格,或在作为除数的单元格中输入不为零的值即可。

注意

如果引用了空单元格,即运算对象是空单元格时,Excel会将其作为零(0)值处理。

3 解决“#VALUE!”错误

在单元格中输入函数表达式后确认,如果出现#VALUE!错误,则可能是以下原因造成的。

为需要单个值(而不是区域)的运算符或函数提供了区域引用。

当函数式需要数字或逻辑值时,输入了文本。

输入和编辑的是数组函数式,但却用“Enter”键进行确认等。

遇到这类错误,解决方法是更正相关的数据类型,如果输入的是数组函数式,则在输入过完成后,使用“Ctrl+Shift+Enter”组合键进行确认。

例如:在某个单元格中输入函数式:=A1+B2,而A1或B2中有一个单元格内容是文本,确认后函数将会返回上述错误。

4 解决“#NUM!”错误

当在公式或函数中使用了无效的数值时,则会出现#NUM!错误。下面分别介绍遇到不同情况时的解决方法。

1.在需要数字参数的函数中使用了无法接受的参数

解决方法为:确保函数中使用的参数是数字,而不是文本、货币以及时间等其他格式。例如,即使要输入的值是¥1000,也应在公式中输1000。

2.输入的公式所得出的数字太大或太小,无法在Excel中表示

更改单元格中的公式,使运算的结果介于“-1*10307”到“1*10307”之间即可。

3.使用了进行迭代的工作表函数,且函数无法得到结果

为工作表函数使用不同的起始值,或者更改Excel迭代公式的次数即可。更改Excel迭代公式次数的操作如下。

01 切换到“文件”选项卡,单击“选项”命令。

02 弹出“Excel选项”对话框,切换到“公式”选项卡,在右侧勾选“启用迭代计算”复选框,在下方设置最多迭代次数和最大误差,完成后单击“确定”按钮即可。

5 解决“#NULL!”错误

当函数表达式中使用了不正确的区域运算符、不正确的单元格引用或指定两个并不相交的区域的交点时,则会出现#NULL!错误。如果使用了不正确的区域运算符,则需要将其进行更正,才能正确返回函数值,具体方法如下。

若要引用连续的单元格区域,可使用冒号分隔对区域中第一个单元格的引用和对最后一个单元格的引用。如SUM(A1:E1)引用的区域为从单元格A1到单元格E1。

若要引用不相交的两个区域,可使用联合运算符,即逗号“,”。如对两个区域求和,可确保用逗号分隔这两个区域,函数表达式为:SUM(A1:C5,D1:F5)。

6 解决“#NAME?”错误

当Excel无法识别公式中的文本时,将出现#NAME?错误,遇到这类错误时,首先针对具体的公式,逐一检查错误的对象,然后加以更正。下面根据具体情况介绍解决方法。

1.使用了不存在的名称

如果是因为使用了不存在的名称导致的错误,查看所使用的名称是否存在的方法为:在“公式”选项卡中的“定义的名称”选项组中单击“名称管理器”,查看名称是否列出,若名称在对话框中未列出,可以单击“新建”按钮添加名称。

2.在公式中输入文本时没有使用双引号

如果需要在公式中输入文本或将输入的内容作为文本使用,则必须使用双引号,此时Excel会将其解释为名称。

3.区域引用中漏掉了冒号“:”

在引用单元格区域时,必须使用冒号“:”,例如“A1:B5”,若未使用冒号,也会出现该错误。用户只需确保公式中的所有区域引用都使用了冒号“:”即可避免此错误。

小提示

如果公式中引用了其他工作表或者其他工作簿中的值或单元格,且这些工作簿或工作表的名字中包含非字母字符或空格,那么必须用单引号“‘”将名称引起。

4.使用了加载宏的函数,而没有加载相应的宏

若是有加载宏的函数,则需要先加载相应的宏,加载宏的具体操作如下。

01 切换到“文件”选项卡,单击“选项”命令。

02 弹出“Excel选项”对话框,切换到“加载项”选项卡,在右侧窗口的“管理”下拉列表中选择“Excel加载项”选项,单击“转到”按钮。

03 弹出“加载宏”对话框,勾选需要加载的宏前面的复选框,单击“确定”按钮即可。

7 解决“#REF!”错误

当单元格引用无效时,会出现#REF!错误,例如,函数引用的单元格(区域)被删除、链接的数据不可用等。可通过下面的方法解决。

更改公式,或者在删除或粘贴单元格后立即单击“撤销”以恢复工作表中的单元格。

启动使用的对象链接和嵌入(OLE)链接所指向的程序。

确保使用的是正确的不可用的动态数据交换(DDE)主题。

检查函数以确定参数是否引用了无效的单元格或单元格区域。

8 解决“#N/A”错误

当数值对函数或公式不可用时,将出现“#N/A”错误。此时可根据具体情况进行解决。

1.缺少数据,在其位置输入了#N/A或NA()

遇到这种情况造成“#N/A”错误时,解决方法是用新的数据代替“#N/A”即可。

2.为工作表函数的lookup_value参数赋予了不正确的值

当为MATCH、HLOOKUP、LOOKUP或VLOOKUP工作表函数的lookup_value参数赋予了不正确的值时,将出现“#N/A”错误。此时的解决方式是确保“lookup_value”参数值的类型正确即可。

3.在未排序的工作表中使用了工作表函数查找值

在未排序的工作表中使用了VLOOKUP、HLOOKUP或MATCH工作表函数来查找值时,也会出现此类错误,解决方法如下。

默认情况下,在工作表中查找信息的函数必须按升序排序。但VLOOKUP函数和HLOOKUP函数包含一个“range_lookup”参数,该参数允许函数在未进行排序的表中查找完全匹配的值。若需要查找完全匹配值,可将“range_lookup”参数设置为“FALSE”。

此外,MATCH函数包含一个“match_type”参数,该参数用于指定列表查找匹配结果时必须遵循的排序次序。若函数找不到匹配结果,可更改“match_type”参数;若要查找完全匹配的结果,需将“match_type”参数设置为“0”。

4.使用函数时省略了必需的参数

当使用内置或自定义工作表函数时,如果省略了一个或多个必需的函数,也会出现此类错误。此时的解决方法是将函数中的所有参数完整输入即可。

5.自定义工作表函数不可用

在工作表中自定义函数后,在下次使用时,若发现该自定义函数不可用,则可能是包含该自定义函数的工作簿未打开的缘故。此时必须确保包含该自定义函数的工作簿已打开,而且函数工作无异常。

6.运行的宏程序输入的函数返回#N/A

当运行的宏程序输入的函数返回#N/A错误时,请确保函数中的参数输入正确且位于正确的位置。

7.数组公式引用区域的行列数不一致

当数组公式中使用的参数的行数或列数与包含数组公式的区域的行数或列数不一致时,也会出现此类错误,解决方法如下。

如果已在多个单元格中输入了数组公式,则必须确保公式引用的区域具有相同的行数和列数,或者将数组公式输入到更少的单元格中。

例如在高为10行的区域(A1:A10)中输入数组公式,但公式引用的区域(C1:C8)高为8行,区域C9:C10中将显示“#N/A”。要更正此错误,可在较小的区域中输入公式如“A1:A8”,或者将公式引用的区域更改为相同的行数,如“C1:C10”。