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

如何通过公式或宏匹配Excel跨表列,批量填充目标列对应值

Excel双条件跨表匹配填充方案

公式方案(无需启用宏,适合大多数场景)

全版本兼容方案(INDEX+MATCH组合)

在目标表Sheet2的N2单元格输入如下公式,Excel 2019及更早版本输入后按Ctrl+Shift+Enter触发数组运算,Excel 365/2021版本直接回车即可,之后下拉填充整列:
=IFERROR(INDEX(Sheet1!$N:$N,MATCH(1,(Sheet1!$C:$C=C2)*(Sheet1!$K:$K=K2),0)),"无匹配")
公式逻辑:用C列+K列的组合作为匹配条件,定位Sheet1中符合条件的行,返回对应行N列的数值,匹配不到时返回“无匹配”。
针对你给出的模拟数据,调整后的公式为(匹配Item_code和Item_id,填充Item_name):
=IFERROR(INDEX(Sheet1!$C:$C,MATCH(1,(Sheet1!$A:$A=A2)*(Sheet1!$B:$B=B2),0)),"无匹配")

Excel 365专属简化方案(XLOOKUP)

365版本可直接使用更简洁的XLOOKUP公式,无需数组运算:
=XLOOKUP(C2&K2,Sheet1!$C:$C&Sheet1!$K:$K,Sheet1!$N:$N,"无匹配",0)
模拟数据适配公式:
=XLOOKUP(A2&B2,Sheet1!$A:$A&Sheet1!$B:$B,Sheet1!$C:$C,"无匹配",0)

VBA宏方案(适合十万行以上大体积数据,避免公式卡顿)

如果数据量极大公式运行卡顿,可以使用宏方案,操作步骤如下:

  1. 按Alt+F11打开VBA编辑器
  2. 右键点击当前工作簿名称,选择「插入」-「模块」
  3. 将下方代码粘贴到模块中,按需修改列标后点击运行即可
Sub 双条件跨表填充()
    Dim wsSource As Worksheet, wsTarget As Worksheet
    Dim dict As Object, i As Long, key As String
    ' 定义源表和目标表,可按需修改表名
    Set wsSource = ThisWorkbook.Worksheets("Sheet1")
    Set wsTarget = ThisWorkbook.Worksheets("Sheet2")
    Set dict = CreateObject("Scripting.Dictionary")
    
    ' 读取源表数据存入字典
    For i = 2 To wsSource.Cells(Rows.Count, "C").End(xlUp).Row
        ' 组合C列+K列作为唯一匹配键
        key = wsSource.Range("C" & i).Value & "|" & wsSource.Range("K" & i).Value
        If Not dict.exists(key) Then
            dict(key) = wsSource.Range("N" & i).Value
        End If
    Next i
    
    ' 匹配填充目标表
    For i = 2 To wsTarget.Cells(Rows.Count, "C").End(xlUp).Row
        key = wsTarget.Range("C" & i).Value & "|" & wsTarget.Range("K" & i).Value
        wsTarget.Range("N" & i).Value = IIf(dict.exists(key), dict(key), "无匹配")
    Next i
    
    ' 释放对象
    Set dict = Nothing: Set wsSource = Nothing: Set wsTarget = Nothing
    MsgBox "填充完成"
End Sub

注意:如果是模拟数据场景,将代码中的C列修改为A列、K列修改为B列、N列修改为C列即可运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 12:15:03