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

如何从Excel工作表1提取父级Sales Order对应子项整行到工作表2?

Excel提取父项对应子项整行数据解决方案

方法一:使用FILTER函数(适用于Excel 365/2021及以上版本)

  • 假设工作表1为Sheet1,工作表2为Sheet2,Concatenation列在两表中均为C列
  • 在Sheet2现有数据下方的空白行(比如A3单元格,假设现有数据到A2)输入公式:
    =FILTER(Sheet1!A:Z, LEFT(Sheet1!C:C, LEN(Sheet2!C2))=Sheet2!C2)
    
    • 逻辑:通过LEFT函数截取Sheet1中Concatenation值的前N位(N为Sheet2父项的长度),与父项匹配后,筛选出所有对应子项的整行数据
    • 优化:如果父项长度固定(比如示例中为12位),可直接将LEN(Sheet2!C2)替换为固定数字,提升公式效率
    • 特性:公式会自动溢出显示所有匹配行,无需手动下拉填充

方法二:使用Power Query批量处理(兼容全版本Excel)

  1. 导入数据:点击「数据」选项卡,分别将Sheet1和Sheet2的数据导入Power Query编辑器
  2. 添加筛选逻辑:在Sheet2的查询中新增自定义列,输入以下M语言公式:
    Table.SelectRows(Sheet1, each Text.Start([Concatenation], Text.Length([Concatenation])) = [Concatenation])
    
  3. 展开数据:点击自定义列右侧的展开按钮,选择需要保留的所有字段
  4. 导出结果:关闭并上载数据至Sheet2的空白区域,后续数据更新可直接刷新查询

注意事项

  • 确保两表Concatenation列的格式一致(均为文本或数值),避免格式不匹配导致筛选失败
  • 若父项与子项的命名规则为「父项+序号」(如父项2503319449100,子项2503319449101),也可使用TEXTBEFORE函数简化匹配逻辑:
    =FILTER(Sheet1!A:Z, TEXTBEFORE(Sheet1!C:C, RIGHT(Sheet1!C:C,1))=Sheet2!C2)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 15:15:32