您输入了太多参数 excel IF 错误
Posted
技术标签:
【中文标题】您输入了太多参数 excel IF 错误【英文标题】:You've entered too many arguments excel IF error 【发布时间】:2020-12-03 04:43:51 【问题描述】:我正在尝试构建一个 IF 公式,但我收到一个错误,即我有太多参数。知道如何解决这个问题吗?
=IF(BZ190=$C$163,$C$163,IF(BZ190=$C$163*$C$165,$C$163*$C$166,IF(BZ190=$C$163*$C$166,$C $163*$C$167, IF(BZ190=$C$163*$C$167,Z190=$C$163*$C$168, IF(BZ190=$C$163*$C$168,$C$163*$C$169, IF( BZ190=$C$163*$C$169,$C$163*$C$170, IF(BZ190=$C$163*$C$170,$C$163*$C$171, IF(BZ190=$C$163*$C$171, $C$163*$C$172, IF(BZ190=$C$163*$C$172,$163*$C$173, IF(BZ190=$C$163*$C$173,$C$163*$C$174, IF( BZ190=$C$163*$C$174,$C$163*$C$175, IF(BZ190=$C$163*$C$175,$163), IF(AND((SUM(BZ190:BZ$190)-168 加元) )
【问题讨论】:
我怀疑应该是=IF(BZ190=$C$163,$C$163,IF(BZ190=$C$163*$C$165,$C$163*$C$166,IF(BZ190=$C$163*$C$166,$C$163*$C$167,IF(BZ190=$C$163*$C$167,Z190=$C$163*$C$168,IF(BZ190=$C$163*$C$168,$C$163*$C$169,IF(BZ190=$C$163*$C$169,$C$163*$C$170,IF(BZ190=$C$163*$C$170,$C$163*$C$171,IF(BZ190=$C$163*$C$171,$C$163*$C$172,IF(BZ190=$C$163*$C$172,$C$163*$C$173,IF(BZ190=$C$163*$C$173,$C$163*$C$174,IF(BZ190=$C$163*$C$174,$C$163*$C$175,IF(BZ190=$C$163*$C$175,$C$163,IF(AND((SUM(BZ190:BZ$190)-CA$168)<0,BZ190=""),$C$163*$C$165,"")))))))))))))
你能告诉我你改变了什么吗?因为它没有给我一个错误,但没有按预期的方式工作
在最后一个不应该存在的 IF 函数之前有一个右括号。
我怀疑,如果您提出潜在问题、数据样本和预期结果,可能会有更简单(且更易于维护)的解决方案。
【参考方案1】:
最后一个 if 子句如下所示:
IF(BZ190=$C$163*$C$175,$C$163),
^
|
| bracket is obsolete
末尾不应该有括号,应该是:
IF(BZ190=$C$163*$C$175,$C$163,
但我这里还有一点:想象一下,在半年或一年之内,你需要修改一些东西。你将如何找出所有这些东西的含义?因此,我建议您使用名称,例如:
$C$163 equals "interest_rate"
$C$165 equals "student_income"
...
像这样,你的公式会变成这样:
IF(BZ190=interest_rate,interest_rate,
IF(BZ190=interest_rate * student_income, ...
这将使阅读和维护更加清晰。而且,哦,在我忘记之前:在多行中编写公式(每行一个 if 子句)也增加了可读性和可维护性。
【讨论】:
非常感谢多米尼克!以上是关于您输入了太多参数 excel IF 错误的主要内容,如果未能解决你的问题,请参考以下文章