Excel 我不断地得到;你';“我为此函数输入了太多参数”;为什么;

Excel 我不断地得到;你';“我为此函数输入了太多参数”;为什么;,excel,excel-formula,arguments,Excel,Excel Formula,Arguments,我一直在 您为此函数输入的参数太多 为什么? =IF( 家!O17=6, 回家!H17, 0, 如果( 家!O17=2, 回家!H20, 0, 如果( 家!O17=3, 回家!H23, 0, 如果( 家!O17=4, 回家!H26, 0, 如果( 家!O17=5, 回家!H29, 0 ) ) ) ) 因为要将四个参数传递给一个三参数函数。在Excel中,函数调用为: =IF (logical_test, [value_if_true], [value_if_false]) 根据结构,我猜您希望

我一直在

您为此函数输入的参数太多

为什么?

=IF(
家!O17=6,
回家!H17,
0,
如果(
家!O17=2,
回家!H20,
0,
如果(
家!O17=3,
回家!H23,
0,
如果(
家!O17=4,
回家!H26,
0,
如果(
家!O17=5,
回家!H29,
0
)
)
)
)

因为要将四个参数传递给一个三参数函数。在Excel中,函数调用为:

=IF (logical_test, [value_if_true], [value_if_false])
根据结构,我猜您希望删除每个“0”,以减少到三个参数。如下所示:

=IF(Home!O17=6,Home!H17,IF(Home!O17=2,Home!H20,IF(Home!O17=3,Home!H23,IF(Home!O17=4,Home!H26,IF(Home!O17=5,Home!H29,0))))
也就是说,我不知道这应该实现什么,我只是猜测你想把它串起来。也许它实际上应该是完全独立的语句。

试试这个

=IF(Home!O17=6,Home!H17,IF(Home!O17=2,Home!H20,IF)(Home!O17=3,Home!H23,IF(Home!O17=4,Home!H26,IF(Home!O17=5,Home!H29,0()))


=IF(Home!O17=6,Home!H17,0,IF
…这是四个参数-您不希望
0
出现在那里,其他地方也一样。您可以在这里使用
CHOOSE
。有关嵌套的IF语句,请参阅文章