多列序列号场景下,如何查询最大序列号对应名称?
解决方案
需求:从分散在多列的序列号中找出最大值,返回其对应行的名称列数据。以下是Excel和Google Sheets的实现方法:
Excel 实现
假设数据范围为A2:D10(A列=名称,B/C/D列=分散的序列号列):
简洁版(Excel 365及以上)
用XLOOKUP直接匹配:
=XLOOKUP(MAX(B2:D10),B2:D10,A2:A10,"无匹配",0,2)
- 说明:
MAX(B2:D10)提取所有序列号的最大值;B2:D10是搜索范围;A2:A10是要返回的名称列;最后一个参数2指定按列搜索多列数据。
兼容旧版Excel
用INDEX+MATCH组合:
=INDEX(A2:A10,MATCH(MAX(B2:D10),B2:D10,0))
- 说明:如果存在多个相同的最大值,该公式会返回第一个匹配的名称。
Google Sheets 实现
公式和Excel通用,直接复用即可:
=XLOOKUP(MAX(B2:D10),B2:D10,A2:A10,"无匹配",0,2)
或者兼容旧版的:
=INDEX(A2:A10,MATCH(MAX(B2:D10),B2:D10,0))
特殊情况处理
- 如果序列号是带前缀的文本格式(比如
SN-123),需要先转成数值再找最大值,示例公式:
Excel 365及以上直接回车,旧版需按=XLOOKUP(MAX(VALUE(B2:D10)),VALUE(B2:D10),A2:A10,"无匹配",0,2)Ctrl+Shift+Enter作为数组公式执行。 - 若要每行单独提取最大序列号及对应名称,可使用如下公式并下拉填充:
=A2&" 对应最大序列号:"&MAX(B2:D2)
内容的提问来源于stack exchange,提问作者hanina
相关产品推荐
相关产品推荐

