Excel 公式因“参数太多”而失败

Excel 公式因“参数太多”而失败

我收到 Excel 消息,提示我的公式参数过多,但我发现有关多个 IF 的教程确实遵循此模式。我的公式是:

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1)), IF(F5="Cash", (E5*0.2)), IF(F5="Adv.", (E5*0.1))

我正在做的是要求单元格检查前一个单元格中是否有“信用、借记、现金或广告”文本,以便应用特定的百分比。

编辑:谢谢斯科特,帮了大忙!

答案1

调试 Excel 公式的第一条规则是检查括号。您的表达式有八个左括号,即 ,(和七个右括号,即)。所以它是错误的。

调试 Excel 公式的第二条规则是检查括号。

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1)), IF(F5="Cash", (E5*0.2)), IF(F5="Adv.", (E5*0.1))
    ↑---------↑  ↑------↑  ↑----------------------↑  ↑---------------------↑  ↑---------------------↑

IF使用五个参数进行调用。正如你从所读的文档中应该知道的那样,你使用IF三个参数进行调用:。诀窍在于IF(boolean, <value-if-true>, <value-if-false>)<value-if-true><value-if-false> 也可以IF调用。如果你从内到外构建公式,可能会有所帮助。

答案2

您正在编写“如果”公式,其中包含大量 () 且没有“如果为假”的值,则必须将一些 ) 移到公式末尾,并且至少写入一个“如果为假”的值,当 F5 为空或与您编写的所有值不同时。
我更正了您的公式,并使用“”作为“如果为假”的值,它将返回一个空单元格:

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1), IF(F5="Cash", (E5*0.2), IF(F5="Adv.", (E5*0.1),""))))

例如:
IF(F5="Debit", (E5*0.1))
我将最后一个 ) 移到了公式末尾
你可以看看嵌套 if 函数

相关内容