You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中查找含指定内容的最后一列标识?

在Google Sheets中获取包含指定内容的最后一列标识

核心解决方案

根据你的需求(查找指定内容在目标行最后出现的列对应的ID/列索引/列字母),以下是几种实用公式:

1. 返回对应运行ID(表头值)

这是最贴合你单元测试跟踪场景的公式,直接返回最后一次出现目标内容的列的表头ID:

=IFERROR(LOOKUP(2,1/(B2:Z2=F1),B$1:Z$1),0)
  • 替换B2:Z2为你的目标数据行范围
  • 替换F1为存放要查找内容的单元格
  • 替换B$1:Z$1为你的运行ID表头行范围
  • 无匹配时返回0,符合你示例中输入Z返回ID0的需求

2. 返回列索引(数字)

如果需要获取列的数字索引(比如B列对应2):

=IFERROR(XLOOKUP(F1,B2:Z2,COLUMN(B2:Z2),,0,-1),0)
  • XLOOKUP的最后一个参数-1表示从右往左反向查找,直接定位最后一个匹配项
  • 无匹配时返回0

3. 返回列字母(如B、C)

若需要列字母标识:

=IFERROR(SUBSTITUTE(ADDRESS(1,XLOOKUP(F1,B2:Z2,COLUMN(B2:Z2),,0,-1),4),"1",""),"0")
  • ADDRESS生成对应列的单元格地址,SUBSTITUTE去掉行号得到纯列字母
  • 无匹配时返回0

公式原理说明

以LOOKUP版本为例:

  • B2:Z2=F1:生成布尔数组,匹配目标内容的位置为TRUE,其余为FALSE
  • 1/(...):将TRUE转为1,FALSE转为#DIV/0!错误值
  • LOOKUP(2,1/(...),B$1:Z$1):LOOKUP会忽略错误值,查找大于所有1的2时,会定位到最后一个1的位置,返回对应表头ID

适配你的示例场景

假设你的表格结构:

  • A列:测试用例(A、B、Q、T、Z)
  • B1:D1:运行ID(ID0、ID1、ID2)
  • B2:D2:测试用例A的结果(空、A、空)
  • B3:D3:测试用例B的结果(B、B、B)
  • B4:D4:测试用例Z的结果(Z、空、空)

当你在F1输入A时,公式返回ID1;输入B时返回ID2;输入Z时返回ID0,完全符合需求。

实用场景扩展

这个公式可以直接应用到你的单元测试失败跟踪:

  • 每行对应一个测试用例
  • 每列对应一次测试运行(表头为运行ID)
  • 单元格标记失败类型(如A/B/Q/T/Z)
  • 通过公式快速定位某失败类型最后出现的运行ID,若该ID早于最新运行ID,说明该测试已修复

内容的提问来源于stack exchange,提问作者kiml42

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 00:00:25