事情是这样的,本来VIP学员的问题已经解决了,趁着空闲又瞎折腾了一下,没想到却意外发现了XLOOKUP的一个新语法。
普通版的根据货品查找第一次和最后一次进货数量。
进阶版的根据货品查找第一次和最后一次入库数量,这里需要排除入库为0这种情况。
1.普通版的根据货品查找第一次和最后一次进货数量
如果有多个对应值,VLOOKUP查找第一次的对应值,LOOKUP查找最后一次的对应值。因此,直接用传统的方法就可以解决。
=VLOOKUP(E2,A:B,2,0)
=LOOKUP(1,0/(E2=A:A),B:B)
这个就一笔带过,重点聊进阶的。
2.进阶版的根据货品查找第一次和最后一次入库数量,这里需要排除入库为0这种情况
在用LOOKUP查找的时候,经常用LOOKUP(1,0/,于是我突发奇想,用1查找0就返回最后的值,那用VLOOKUP的0查找0不就返回第一次的值。不过VLOOKUP不好嵌套,于是换成了XLOOKUP。
没想到,测试成功。
=XLOOKUP(0,0/((A:A=E2)*(B:B>0)),B:B)
XLOOKUP除了可以查找第一次,也能查找最后一次。在原来的公式后面加3个,意思是省略掉参数用逗号占位,而最后的-1代表查找最后的值。
=XLOOKUP(0,0/((A:A=E2)*(B:B>0)),B:B,,,-1)
用这个思路,重新回到基础版的,第一次进货数量。
=XLOOKUP(0,0/(A:A=E2),B:B)
或者用:
=XLOOKUP(E2,A:A,B:B)
最后一次进货数量。
=XLOOKUP(0,0/(A:A=E2),B:B,,,-1)
或者用:
=XLOOKUP(E2,A:A,B:B,,,-1)
有话要说...