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

Power Query提取嵌套表:合并不同结构CSV并保留全列的技术问询

解决多结构CSV全列追加合并并保留文件名的方法

针对你当前的嵌套表场景,直接用Power Query的M代码就能实现全列保留的追加合并,同时自动添加文件名列,步骤如下:

  1. 创建处理单个CSV的自定义函数
    在Power Query编辑器中,点击「主页」→「新建源」→「空白查询」,把默认的= #table(...)替换成以下代码,然后将查询重命名为fn_ProcessCSV:
(CSVContent as table, FileName as text) as table =>
    let
        // 给当前CSV表新增文件名列
        AddFileNameColumn = Table.AddColumn(CSVContent, "文件名", each FileName)
    in
        AddFileNameColumn
  1. 批量处理嵌套表中的所有CSV
    回到你存储嵌套CSV的主表(假设表名是「文件列表」,包含[Name]文件名列和[Content]嵌套表列),添加自定义列:
= Table.AddColumn(文件列表, "处理后数据", each fn_ProcessCSV([Content], [Name]))

这一步会给每个嵌套的CSV表都加上对应的文件名列。

  1. 合并所有处理后的表(保留全列)
  • 先提取所有处理后的表到一个列表:
= Table.SelectColumns(上一步结果, {"处理后数据"})[处理后数据]
  • 再用Table.Combine合并列表里的所有表:
= Table.Combine(上一步得到的列表)

Table.Combine会自动保留所有出现过的列,不同CSV里没有的列会填充null,完美解决UI合并只保留匹配列的问题。

最后直接加载这个合并后的表即可,所有CSV的列都会被保留,同时每行都带对应的文件名标识。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 14:06:03