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

Power Query如何合并除Custom列外的所有列(列名动态变化)

Power Query 动态合并指定列的解决方案
  • 先确认你获取目标列名的代码是正确的,注意拼写修正(原代码里的ConveretedtoDecimal多了一个e,应为ConvertedtoDecimal):

    columnsToMerge = List.Select(Table.ColumnNames(ConvertedtoDecimal), each _ <> "Custom")
    
  • 你之前用Table.TransformColumns的写法无效,原因是该函数的each上下文仅指向当前列的单元格值,无法直接引用列名列表去提取整行的其他列数据。正确实现方式如下:

    方案1:替换原Custom列,将其转为合并后的文本类型

    Table.ReplaceColumns(ConvertedtoDecimal, "Custom", 
        {"Custom", (row) => Text.Combine(List.Transform(columnsToMerge, each Text.From(Record.Field(row, _))), ""), type text}
    )
    

    方案2:新增一列存放合并结果,保留原Custom列

    Table.AddColumn(ConvertedtoDecimal, "MergedColumns", 
        (row) => Text.Combine(List.Transform(columnsToMerge, each Text.From(Record.Field(row, _))), ""), type text
    )
    
  • 核心逻辑说明:

    • (row)代表当前行的完整记录,通过Record.Field(row, 列名)可以精准提取当前行对应列的数值
    • Text.From用于将Decimal类型的数值转换为文本,避免合并时出现类型错误
    • Text.Combine的第二个参数是合并分隔符,当前用空字符串,若需要分隔可替换为","或其他符号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 22:29:53