【发布时间】:2018-12-22 04:00:12
【问题描述】:
有人可以帮忙吗?它说,“你为此函数输入了太多参数”,但如果我删除两行就可以了。
=IF(IF(AND(J7<>"",IFERROR(MATCH(J$3, C7:F7, 0), "")<>""), IFERROR(MATCH(J$3, C7:F7, 0), ""),
IF(AND(K7<>"",IFERROR(MATCH(K$3, C7:F7, 0), "")<>""), IFERROR(MATCH(K$3, C7:F7, 0), ""),
IF(AND(L7<>"", IFERROR(MATCH(L$3, C7:F7, 0), "")<>""), IFERROR(MATCH(L$3, C7:F7, 0), ""),
IF(AND(M7<>"", IFERROR(MATCH(M$3, C7:F7, 0), "")<>""), IFERROR(MATCH(M$3, C7:F7, 0), ""),
IF(AND(N7<>"", IFERROR(MATCH(N$3, C7:F7, 0), "")<>""), IFERROR(MATCH(N$3, C7:F7, 0), ""),
IF(AND(O7<>"", IFERROR(MATCH(O$3, C7:F7, 0), "")<>""), IFERROR(MATCH(O$3, C7:F7, 0), ""),
IF(AND(P7<>"", IFERROR(MATCH(P$3, C7:F7, 0), "")<>""), IFERROR(MATCH(P$3, C7:F7, 0), ""),
IF(AND(Q7<>"", IFERROR(MATCH(Q$3, C7:F7, 0), "")<>""), IFERROR(MATCH(Q$3, C7:F7, 0), ""),
IF(AND(R7<>"", IFERROR(MATCH(R$3, C7:F7, 0), "")<>""), IFERROR(MATCH(R$3, C7:F7, 0), ""),
IF(AND(S7<>"", IFERROR(MATCH(S$3, C7:F7, 0), "")<>""), IFERROR(MATCH(S$3, C7:F7, 0), ""),
IF(AND(T7<>"",IFERROR(MATCH(T$3, C7:F7, 0), "")<>""), IFERROR(MATCH(T$3, C7:F7, 0), ""),
IF(AND(U7<>"", IFERROR(MATCH(U$3, C7:F7, 0), "")<>""),IFERROR(MATCH(U$3, C7:F7, 0), ""), ""))))))))))<>"", TRUE, FALSE)
【问题讨论】:
-
如果你只知道 TRUE/FALSE:
=SUMPRODUCT(COUNTIF(C7:F7,J$3:U$3))>0 -
也许包括一个简短的叙述,解释您正在尝试做什么以及您希望返回什么。必须有更好的方法来完成您正在尝试的事情。
-
Excel 对长度公式有内置限制。你只是击中了它。这通常意味着您正在尝试使用公式进行过于复杂的操作。也许 VBA 是前进的方向?
-
我同意有一些目标线索会有所帮助,但如果你想让这个在语法上正确,你需要在最后一个 之前在集群中添加另外两个右括号"
-
@OleThomsenBuus 我没看到他在哪里使用 Excel 2003。从那时起,公式长度限制为 8,192 个字符,而这个公式远低于此值。
标签: excel if-statement formulas