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

Power BI SharePoint Folder连接器导入新增CSV文件时缺失列求助

问题原因与解决方案:SharePoint Folder导入CSV新增列缺失

问题根源

你的代码中,扩展列步骤依赖固定样本文件的列名集合:

#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File", Table.ColumnNames(#"Transform File"(#"Sample File"))),

这里的#"Sample File"是Power BI初始导入时自动选取的旧文件,不包含新增列,因此扩展操作只会加载样本中存在的列,新文件的额外列被直接忽略。


解决方案

方案1:动态获取所有文件的列名集合(推荐,持久化解决)

替换原有的Expanded Table Column1步骤,改为先收集所有已转换文件的列名,合并去重后再扩展列:

// 替换原Expanded Table Column1步骤
#"Get All Column Names" = List.Distinct(List.Combine(List.Transform(#"Removed Other Columns1"[Transform File], Table.ColumnNames))),
#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File", #"Get All Column Names")
  • List.Transform(..., Table.ColumnNames):遍历所有已转换的文件表,提取每个表的列名
  • List.Combine:将所有列名合并为一个列表
  • List.Distinct:去重得到所有文件的唯一列名集合
  • 用该集合扩展列后,新文件的额外列会被自动包含,无对应数据的列将显示null

方案2:手动更新样本文件(临时方案)

若不想修改代码,可临时更新Power BI的样本文件:

  • 进入Transform File自定义函数的编辑界面
  • 点击【高级编辑器】旁的【从样本】,选择包含新增列的CSV文件作为新样本
  • 保存函数后返回主查询,刷新数据即可显示新增列

注意:该方案仅临时生效,后续新增列需重复操作


额外注意事项

  • 确保Transform File函数中没有硬编码列名(如Table.SelectColumns固定保留列),否则新列会被过滤
  • 类型转换步骤需适配动态列:原代码中Changed Specific Types仅处理固定列,新列默认保持文本类型,可按需添加动态类型判断或统一先转文本再处理

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 21:55:57