Excel跨工作表模糊匹配:输入部分字符串自动填充姓名与ID
Excel 模糊匹配自动填充姓名与ID的公式方案
假设你的数据结构如下:
- sheet2:A列存储完整姓名,B列存储对应ID
- sheet1:A列输入部分姓名字符串(如“gesang”),B列需填充完整姓名,C列需填充对应ID
1. 填充完整姓名(sheet1的B2单元格)
使用带通配符的VLOOKUP公式,匹配包含输入字符串的完整姓名:
=IFERROR(VLOOKUP("*"&A2&"*", sheet2!A:B, 1, FALSE), "无匹配结果")
"*"&A2&"*":将输入的部分字符串前后加上通配符*,实现包含式模糊匹配sheet2!A:B:指定sheet2中存储姓名和ID的数据范围1:返回数据范围的第1列(即完整姓名列)FALSE:确保只匹配符合条件的结果(结合通配符实际为包含匹配)IFERROR:无匹配时返回自定义提示,避免显示错误值
2. 填充对应ID(sheet1的C2单元格)
有两种常用方案可选:
方案一:VLOOKUP
=IFERROR(VLOOKUP("*"&A2&"*", sheet2!A:B, 2, FALSE), "无匹配结果")
仅将返回列数改为2(对应sheet2的ID列)即可。
方案二:INDEX+MATCH
=IFERROR(INDEX(sheet2!B:B, MATCH("*"&A2&"*", sheet2!A:A, 0)), "无匹配结果")
MATCH("*"&A2&"*", sheet2!A:A, 0):定位包含输入字符串的姓名在sheet2中的行号INDEX(sheet2!B:B, ...):根据行号提取对应ID
注意事项
- 如果sheet2中有多个包含相同部分字符串的姓名,公式会返回第一个匹配的结果
- 若需匹配开头/结尾的字符串,可调整通配符位置:
- 匹配开头:
A2&"*" - 匹配结尾:
"*"&A2
- 匹配开头:
内容的提问来源于stack exchange,提问作者Sari Devi
相关产品推荐
相关产品推荐

