如何匹配Sheet1与Sheet2指定列并提取Sheet2对应G列数据
跨工作表匹配提取数据操作方法
你可以直接用Excel自带的查找匹配函数实现需求,以下是两种常用方案:
方案1:兼容所有Excel版本的VLOOKUP方案
操作步骤如下:
- 打开Sheet1工作表,选择你要存放匹配结果的空白列(假设为Sheet1的G列,第一行为表头),点击第二行的空白单元格G2
- 输入公式:
=IFERROR(VLOOKUP(F2, Sheet2!$E:$G, 3, FALSE), "无匹配") - 公式说明:
- F2:Sheet1中用于匹配的基准值,即你要拿Sheet1的F列内容去匹配Sheet2的E列
- Sheet2!$E:$G:Sheet2中的匹配数据源,必须将用于匹配的E列放在该区域的第一列
- 3:指返回上述数据源中第3列(即G列)的内容
- FALSE:指定为精确匹配,避免近似匹配导致的错误结果
- IFERROR:将匹配不到的#N/A错误替换为「无匹配」提示,你也可以替换为空白或者其他自定义内容
- 按回车确认公式后,鼠标放在G2单元格右下角,待光标变成十字填充柄后下拉,批量应用公式到所有数据行即可
方案2:新版Excel/ WPS更易用的XLOOKUP方案
如果你的软件版本支持XLOOKUP函数,公式逻辑更清晰,不容易出错:
- 同样点击Sheet1要存放结果的第二行单元格,输入公式:
=XLOOKUP(F2, Sheet2!E:E, Sheet2!G:G, "无匹配") - 公式说明:直接指定匹配值、匹配列、返回列、匹配不到时的返回值,无需计算列序号
- 同样下拉填充公式即可
异常处理
如果出现明明有对应值却匹配不到的情况,大概率是两个表的匹配值存在首尾空格、不可见字符,你可以用TRIM函数清洗后再匹配,修改公式为:=IFERROR(VLOOKUP(TRIM(F2), Sheet2!$E:$G, 3, FALSE), "无匹配")
参考图示


内容的提问来源于stack exchange,提问作者Cornelius Wilson
相关产品推荐
相关产品推荐

