这个公式:
=IF(AND(A2<H2),(A2>=0),G2,IF(AND(A2<H3,A2>=H2),G3),(IF(AND(A2<H4,A2>=H3),G4),(IF(AND(A2<H5,A2>=H4),G5),IF(AND(A2<H6,A2>=H5),G6)
给了我错误,“你为这个函数输入了太多的参数”。
我没有虚假陈述;我只是希望它们在真实时执行。
答案 0 :(得分:2)
您只需查看屏幕上的提示即可对公式进行问题排查。工具提示将告诉您关于公式语法的确切位置以及接下来的内容。
示例:
光标位于AND()语句的中间。工具提示以粗体显示当前语法元素。我们目前处于AND()的第一个逻辑条件。下一个预期的条目是逗号和另一个逻辑条件。结束括号将关闭AND()语句。
继续使用右括号,因此关闭AND()语句,公式继续包含IF()语句的下一个参数。
但是你认为你仍然在AND()函数中并提供另一个逻辑条件,Excel将其解释为IF()函数的TRUE语句。
Excel现在需要IF函数的FALSE语句,然后是关闭IF语句的括号。您提供单元格引用,然后使用逗号继续另一个IF。到目前为止,您已为第一个IF语句输入了太多参数。在以下屏幕截图中,不会突出显示任何参数。 Excel无法将当前光标位置放在正确的公式语法中。
如果在输入公式时查看工具提示,则可以看到AND语句过早关闭。删除多余的括号,然后立即查看工具提示。
我们现在处于第一个IF的FALSE语句中,并从另一个嵌套的IF()开始。以这种方式继续,看看工具提示告诉你什么,你将到达正确形成的
=IF(AND(A2<H2),(A2>=0),G2,IF(AND(A2<H3,A2>=H2),G3),(IF(AND(A2<H4,A2>=H3),G4),(IF(AND(A2<H5,A2>=H4),G5),IF(AND(A2<H6,A2>=H5),G6)
观看Excel的有用提示可以节省大量的故障排除时间。
答案 1 :(得分:0)
除了前面提到的AND(...)
语法问题之外,您过早关闭了后面的IF(...)
语句。
=IF(AND(A2<H2,A2>=0),G2,IF(AND(A2<H3,A2>=H2),G3,IF(AND(A2<H4,A2>=H3),G4,IF(AND(A2<H5,A2>=H4),G5,IF(AND(A2<H6,A2>=H5),G6, "nothing matched")))))
......或,
=IF(AND(A2<H2,A2>=0),G2,IF(AND(A2<H3,A2>=H2),G3,IF(AND(A2<H4,A2>=H3),G4,IF(AND(A2<H5,A2>=H4),G5,IF(AND(A2<H6,A2>=H5),G6)))))
将它放入记事本等文本编辑器中(线条换行),并将自己的公式放在它下面的行中,以比较语法。