1 查找最后一个非空单元格
- LOOKUP(1,0/(A1:A22<>""),A1:A22) '查找数值,字符串,一般查出来的是第一个符合条件的
- LOOKUP(999999,A:A) ’查找符合条件的最后一个单元格
查找最后一个非空单元格,也有其他方法
如果最后一个非空单元格为数值型数据,可以用下面的公式:
=MATCH(9E+307,A:A)
此公式通过在目标中查找近似于9E+307的值,从而返回最后一个非空单元格的位置。9E+307是EXCEL单元格中允许输入的最大数值。
如果最后一个非空单元格为文本型数据,可以用下面的公式:
=MATCH(CHAR(1),B:B,-1) 原则上需要数据降序
此公式在目标中查找大于或等于ASCI!码最小字符的值,从而返回最后一个非空单元格的位置。
2多条件查询
容易出错的原因:
- 所有条件外(作为分母)一定要括号扣起来
- 条件之间是相乘的关系
- 每个条件的计算结果都会生成1个数组,内部计算是 数组计算
- LOOKUP(1,0/((条件区域1=条件1)*(条件区域2=条件2)),查询区域)
- LOOKUP(1,0/(A1:A22=15),B1:B22)
- LOOKUP(1,0/((A1:A25=15)*(C1:C25="A")),D:D)
- LOOKUP(1,0/((A1:A22=15)*(C1:C22="A")*(E1:E22=170)),A:A)
3 实际例子比较
4 特殊用法
- LOOKUP(1,0/FIND(B70,E:E),E:E)
- 这样可以查,符合条件的最后1个单元