- //Unnamed
- let
- 源 = Excel.CurrentWorkbook(){[Name = "表2"]}[Content],
- 逆透视的其他列 = Table.UnpivotOtherColumns(源, {"姓名"}, "属性", "值"),
- 分组的行 = Table.Group(
- 逆透视的其他列,
- {"姓名"},
- {{"data", each Table.AddIndexColumn(_, "index", 0, 1, Text.Type)}}
- ),
- 已添加自定义 = Table.AddColumn(
- 分组的行,
- "自定义",
- each Table.AddColumn([data], "Name", (x) => x[姓名] & "/" & Text.From(x[index]))
- ),
- 删除的其他列 = Table.SelectColumns(已添加自定义, {"自定义"}),
- #"展开的“自定义”" = Table.ExpandTableColumn(删除的其他列, "自定义", {"属性", "值", "Name"}, {"属性", "值", "Name"}),
- 排序的行 = Table.Sort(#"展开的“自定义”", {{"属性", Order.Ascending}}),
- 已透视列 = Table.Pivot(排序的行, List.Distinct(排序的行[属性]), "属性", "值"),
- 按分隔符拆分列 = Table.SplitColumn(
- 已透视列,
- "Name",
- Splitter.SplitTextByDelimiter("/", QuoteStyle.Csv),
- {"Name.1", "Name.2"}
- ),
- 更改的类型 = Table.TransformColumnTypes(按分隔符拆分列, {{"Name.1", type text}, {"Name.2", Int64.Type}}),
- 删除的列 = Table.RemoveColumns(更改的类型, {"Name.2"})
- in
- 删除的列
复制代码
|