目录
1 问题
2 解决办法
3 lookup()变形公式, lookup(1,0/((列1=条件1)*(列2=条件2))
3.1 公式用法
3.2 局限性
4 数组公式,INDEX(H:H,MAX(IF(I:I=K4,ROW(H:H))))
4.1 语法
1问题
一般来说,EXCEL里使用 match()等只能查到符合条件的第一个单元格。
但是有时候,需要查询的是符合条件的最后1个数据
2 解决办法
- 解决办法1:lookup()变形公式, lookup(1,0/((列1=条件1)*(列2=条件2))
- 解决办法2:数组公式,INDEX(H:H,MAX(IF(I:I=K4,ROW(H:H)))),注意用三键
3 lookup()变形公式, lookup(1,0/((列1=条件1)*(列2=条件2))
3.1 公式用法
- lookup(1,0/((列1=条件1)*(列2=条件2))
- 注意,如果是多条件,下面要用乘法,且多层括号
3.2 局限性(因此不好用的时候,就放弃lookup(),用方法2吧)
- 有时候会莫名其妙的出错
- 暂时试到可以修正的办法是,列只取需要的那一截,而不是用整列
- 但是引起的原因不详细
见下图,两种写法一对一错
4 数组公式,INDEX(H:H,MAX(IF(I:I=K4,ROW(H:H))))
4.1 语法
- 数组公式 INDEX(H:H,MAX(IF(I:I=K4,ROW(H:H))))
- 取得最大的那个单元格的行号,MAX(IF(I:I=K4,ROW(H:H)))
- index(列A,需要的行号)