如何避免损坏的公式

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

公式返回意外结果或错误时,可能会非常令人沮丧,尤其是在您不知道下一步怎样做时。

许多事情可能出错。 例如,可能存在不匹配的括号、输入错误或引用了不存在的区域中的数据。 在您构建公式或者需要纠正公式时,以下最佳做法可帮助您避免或解决常见错误。

使用此最佳做法:

避免此常见错误:

所有函数都以等号 (=) 开头

如果您的输入未以等号开头,则不能形成公式,也不会执行计算 - 这是一个非常容易犯的常见错误。

例如,键入类似于 SUM(A1:A10) 这样的内容时,Excel Online 将显示文本字符串 SUM(A1:A10),而非公式计算结果。 如果键入 11/2,您将看到日期,例如“11 月 2 日”或“2009 年 11 月 2 日”,而不是 11 除以 2。

要避免这些意外结果,务必始终使用等号。 例如,键入:=SUM(A1:A10) and =11/2

所有左括号和右括号匹配

请确保所有括号均成对出现。 在使用函数的公式中,每个左括号需要一个对应的右括号,才能保证函数正常工作。

例如,公式 =IF(B5<0),"Not valid",B5*1.05) 将不能工作,因为此处有两个右括号而只有一个左括号。

正确的公式如下所示:=IF(B5<0,"Not valid",B5*1.05)

输入所有必需参数

大多数函数都有必需的参数,必须提供这些值才能保证函数正常工作。 只有少数几个函数(如 PITODAY)不需要参数。 开始键入后接公式的等号时,务必检查公式语法,保证输入所有必需的参数 - 不多不少。

例如,UPPER 函数只接受一个文本字符串或单元格引用作为其参数:=UPPER("hello") or =UPPER(C2)

另外,部分参数(例如 SUM)仅需要数值参数,而其他一些函数(例如 REPLACE)则至少有一个参数要求为文本值。 如果您使用了错误的数据类型,部分函数可能会返回意外结果或显示 #VALUE! 错误。

在公式中使用不带格式的数字

在公式中请勿输入带美元符号 ($) 或小数分隔符的数字 (,),因为美元符号表示绝对引用,逗号将用作参数分隔符。公式计算中不会使用带格式的数字。不要在公式中输入 $1,000,而是应该输入 1000

如果在参数中使用带格式的数字,则会得到意外的计算结果,而且很有可能看到 #NUM! 错误。 例如,如果输入公式 =ABS(-2,134) 来获取 -2134 的绝对值,Excel Online 将显示 #NUM! 错误,因为 ABS 函数 仅接受一个参数。

您可以在使用不带格式的数字输入公式之后,再应用数字格式来设置公式结果,使用小数分隔符和货币符号。

使用正确的单元格数据类型

如果单元格的数据类型无法在计算中使用,公式就可能无法返回预期结果。

例如,如果在格式设置为文本的单元格中输入简单公式 =2+3,Excel Online 将无法计算所输入的数据。 您在单元格中看到的内容就是 =2+3

若要修复此错误,将单元格的数据类型从“文本”更改为“常规”,如下所示:

  1. 选择相应的单元格。

  2. 单击“开始”>“数字格式”箭头,选择“常规”。

  3. 按 F2 将单元格置于编辑模式,并按 Enter 接受公式。

在数据类型为“数字”的单元格中输入的日期可能会显示为数字日期值,而非日期。 要将此数字显示为日期,在“数字格式”库中选择一种“日期”格式。

使用 * 符号将数字相乘

您可能希望使用 x 作为公式中的乘法运算符,但必须改为使用星号 (*)。

在公式中使用 x 时,Excel Online 无法计算结果,只会显示单元格中的公式,并用红色虚线框起单元格,表示存在公式错误。

在公式中的文本两侧使用引号

如果您创建了一个包含文本的公式,请将该文本用引号括起来。

例如,公式="Today is " & TEXT(TODAY(),"dddd, mmmm dd") 将文本“Today is”与 TEXTTODAY 函数的计算结果合并在一起,在单元格中返回 Today is Monday, May 30

在该公式中,“Today is ”的右引号之前有一个空格;这将在“Today is”和“Monday, May 30”之间提供所需空格。如果没有用引号括起文本,公式可能会显示 #NAME? 错误。

一个公式中嵌套的函数最多不要超过 64 个

在一个函数中,您可以组合(或嵌套)最多 64 层函数。

例如,公式 =IF(SQRT(PI())<2,"Less than two!","More than two!") 包含三个函数:PI 函数嵌套在 SQRT 函数内,后者又嵌套在 IF 函数内。

避免将数字值除以零

将某个单元格除以包含零 (0) 值或无值的单元格将得到 #DIV/0! 错误。

为避免此错误,请将除法运算嵌套在 IFERROR 函数中。 例如,在工作表的单元格中输入以下两个公式:

=IFERROR(3/0,0)

=IFERROR(3/7,0)

第一个公式将返回 0,因为 IFERROR 函数能识别被零除所导致的错误。 第二个公式将返回值 3/7 - 没有显示任何错误,因为这里并未除以零。

为简化公式的创建,您可能希望了解这些公式的提示和技巧

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×