这里是我的Excel工作簿为什么LOOKUP不匹配数组中的第一个元素?
我不明白,为什么在细胞j7
值44
截图?
j7
式是=LOOKUP(1,(TRIM($D$2:$D$9)=TRIM(H7))/(TRIM($E$2:$E$9)=TRIM(I7)),$F$2:$F$9)
两个阵列划分的结果被以下
{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}/ {TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE} = {1;#DIV/0!;0;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!}
右?
所以我找了1
,基本公式变为
LOOKUP(1,{1;#DIV/0!;0;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!},$F$2:$F$9)
因此其结果应该是10
但不44
。 。 。 。 。 ?
编辑
当我纠正我的公式来=LOOKUP(1,1/(TRIM($D$2:$D$9)=TRIM(H7))/(TRIM($E$2:$E$9)=TRIM(I7)),$F$2:$F$9)
它工作正常。为什么?感谢大家给予替代方案match
和index
。我只是不明白为什么我的第一个公式不起作用。任何为什么当我加1/
它MAGICALLY作品? ? ?
你能解释你的业务需求吗?看起来你可以通过简单的排序获得相同的结果。 – 2014-10-06 20:19:19
[重要事项lookup_vector中的值必须按升序排列](http://support2.microsoft.com/kb/324986)。 – pnuts 2014-10-06 20:21:04
我的向量不是升序,这意味着''lookup'应该在遇到'#DIV/0!''后立即停止。 。因此停在第一个值 – Buras 2014-10-06 20:27:57