在Sheets中如何查找行内指定值最后一次匹配的列号
查找值最后一次出现的列
先把你的数据整理成表格:
| A | B | C | D | E | F | G | H | I | J | K | L |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 6 | 6 | 9 | 9 | 3 | 3 | 2 | 2 | 3 | 1 | 1 | 1 |
下面给你两种实用的Excel公式方案,直接就能用:
方案1:用LOOKUP函数(兼容所有Excel版本)
如果你需要返回最后一个3所在的列号(比如I列对应列号9),用这个公式:=LOOKUP(2,1/(A1:L1=3),COLUMN(A1:L1))
要是想直接返回列字母(如I),就用这个组合公式:=LEFT(ADDRESS(1,LOOKUP(2,1/(A1:L1=3),COLUMN(A1:L1)),4),1)
逻辑很简单:A1:L1=3会生成一组真假值,1/(...)把真转成1、假转成错误值,LOOKUP会跳过错误值,定位到最后一个1对应的位置,再提取列号或列标。
方案2:用XLOOKUP函数(仅Excel 365/2021及以上版本)
新版本Excel可以用更直观的XLOOKUP,一步搞定:
返回最后一个3的单元格内容:=XLOOKUP(3,A1:L1,A1:L1,,0,-1)
要获取列字母的话,搭配COLUMN和ADDRESS:=LEFT(ADDRESS(1,COLUMN(XLOOKUP(3,A1:L1,A1:L1,,0,-1)),4),1)
这里最后一个参数-1就是告诉函数从右往左找,直接定位到最后一个匹配的位置。
内容的提问来源于stack exchange,提问作者fcc
相关产品推荐
相关产品推荐

