太多,如果或嵌套循环在Excel中
我有一个代码,有太多的嵌套语句
基本上我有1个单元格与100个单元格进行比较,这100个单元格有自己的价值,Excel只有最多64个循环。 有什么build议么?
A = B = >> X = B1
A = C = >> X = C1
A = D = >> X = D1
A = E = >> X = E1
IF(L2=S2,T2,IF(L3=S3,T3,IF(L4=S4,T4,IF(L5=S5,T5,IF(L6=S6,T6,IF(L7=S7,T7,IF(L8=S8,T8,IF(L9=S9,T9,IF(L10=S10,T10,IF(L11=S11,T11))))))))))
谢谢!
我认为表查找比一堆ifs简单得多:
=HLOOKUP(Value,{"Cond1","Cond2","Cond3";"Res1","Res2","Res3"},2,FALSE)
要么
=VLOOKUP(Value,{"Cond1","Res1";"Cond2","Res2";"Cond3","Res3"},2,FALSE)
如果你的条件和结果是连续的范围更简单
在Excel中有7个嵌套的硬性限制。
这是一个技巧来增加这个限制。
以下数组公式可能有所帮助:
={INDEX(A1:H1;1;MIN((IF(L3:R3=S3:Y3;COLUMN(B1:H1);""))))}
L3:R3
数据arrays1
S3:Y3
正在比较数据数组2
B1:H1
数据数组的对应值
INDEX
将查找第1行和第一个匹配对应的列的值。 数组的大小应该匹配,否则公式会给#N/A
使用Shift-Ctrl-Enter插入公式,曲线括号由Excel插入,而不是由用户插入。