如何在Excel中匹配不同列的部分值并返回完整数值
Excel公式:根据部分编号匹配完整编号
需求
通过F列的部分编号(最后5位),在C列的完整编号中找到包含该部分的数值,返回对应的完整编号。
可用公式
方案1:Excel 365/2021及以上版本(动态数组)
在对应行的空白单元格(如G2)输入:
=IF(F2="","",XLOOKUP("*"&F2&"*",C:C,C:C,"无匹配"))
- 逻辑:
"*"&F2&"*"匹配任意包含F2内容的文本;XLOOKUP查找C列符合条件的项,返回对应完整编号,无匹配时显示"无匹配";IF处理F列空值的情况。
方案2:旧版Excel(数组公式)
在目标单元格输入后,按Ctrl+Shift+Enter组合键确认:
=IF(F2="","",INDEX(C:C,MAX(IF(ISNUMBER(FIND(F2,C:C)),ROW(C:C),0))))
- 逻辑:
FIND检测C列单元格是否包含F2内容;ISNUMBER将检测结果转换为有效匹配的布尔值;IF提取匹配项的行号;MAX取最后一个匹配行的行号(需第一个匹配则替换为MIN);INDEX返回对应行的完整编号;IF处理空值。
示例验证
比如部分编号17288,公式会匹配到C列的900108001617288并返回该值。
内容的提问来源于stack exchange,提问作者Vasko
相关产品推荐
相关产品推荐

