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

Power Query单列内容拆分至多行操作方案咨询

Power Query 拆分指定列内容到独立行操作方案

核心逻辑说明

你提供的待处理内容存在两种分隔场景:

  • 多数条目通过换行符分隔
  • 部分条目无换行,直接在前一条的%结束后拼接下一条(如11.74 %p3(149.0 µm...、8.80 %Mean value...),所有有效条目均以%为结束标识,以此作为拆分判断依据即可。

可视化操作步骤(不用写代码也能完成)

  • 第一步:将待处理数据导入Power Query编辑器
  • 第二步:统一换行符避免识别异常:
    右键Column1列名>选择「替换值」,查找值输入#(cr),替换为#(lf),点击确定;再重复一次替换操作,查找值输入#(lf)#(lf),替换为#(lf),清除多余空行
  • 第三步:处理无换行的拼接条目:
    再次右键Column1列名>选择「替换值」,查找值输入%,替换为%#(lf),点击确定,给所有条目结束的百分号后统一插入换行符
  • 第四步:按换行符拆分到行:
    右键Column1列名>选择「拆分列」>「按分隔符」,分隔符选择「自定义」,输入#(lf),拆分选项选择「拆分为行」,高级选项中勾选「将引号视为分隔符」,点击确定
  • 第五步:清理冗余内容:
    右键Column1列名>选择「转换」>「修剪」,清除内容前后的空格、多余引号;再点击列头的筛选按钮,取消勾选空值,删除拆分产生的空行即可

可直接复用的M代码(更快捷)

如果你熟悉高级编辑器操作,可直接替换以下代码,只需调整源步骤对应你的数据源即可:

let
    源 = Excel.CurrentWorkbook(){[Name="你的表格名称"]}[Content],
    统一换行符 = Table.TransformColumns(源,{{"Column1", each Text.Replace(_, "#(cr)", "#(lf)"), type text}}),
    百分号后插入换行 = Table.TransformColumns(统一换行符,{{"Column1", each Text.Replace(_, "%", "%#(lf)"), type text}}),
    按换行拆分到行 = Table.ExpandListColumn(Table.TransformColumns(百分号后插入换行, {{"Column1", Splitter.SplitTextByDelimiter("#(lf)", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column1"),
    修剪内容 = Table.TransformColumns(按换行拆分到行,{{"Column1", Text.Trim, type text}}),
    筛选有效行 = Table.SelectRows(修剪内容, each [Column1] <> "" and [Column1] <> """")
in
    筛选有效行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 11:45:04