在一列的单元格中展开每个分隔值的表行

时间:2016-06-21 23:09:10

标签: powerbi powerquery

我是Excel VBA程序员,他最近发现了Power Query和Power BI。

通常,我会收到更改内容的请求:

this.

进入一种看起来像:

的非旋转版本

enter image description here

这绝对可以在VBA中完成,但可以观看多个Power Query视频(现在订购了三本书!)看起来在Power Query中执行它会更有效率。

我得到了全部的想法(从分隔列表中创建一个表,但是不知道实际步骤的语言)。我真的想学习这些新工具。

我可以买元音吗?给朋友打电话?

1 个答案:

答案 0 :(得分:1)

  1. 使用From Table
  2. 将表格导入Power Query
  3. 单击第二列,然后选择"拆分列|通过Delimiter"从功能区。选择逗号作为分隔符,然后单击“确定”。
  4. 右键单击第一列,然后选择" Unpivot Other Columns"。
  5. 单击“属性”列,然后单击“#34;删除列"从功能区。
  6. 如果您转到高级编辑器,您可以看到用于生成此代码的代码:

    let
        Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}}),
        #"Split Column by Delimiter" = Table.SplitColumn(#"Changed Type","Column2",Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv),{"Column2.1", "Column2.2", "Column2.3"}),
        #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Column2.1", type text}, {"Column2.2", type text}, {"Column2.3", type text}}),
        #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Changed Type1", {"Column1"}, "Attribute", "Value"),
        #"Removed Columns" = Table.RemoveColumns(#"Unpivoted Other Columns",{"Attribute"})
    in
        #"Removed Columns"