为一列单元格中的每个定界值展开 Table 行
Expand Table Rows for Each Delimited Value in One Column's Cells
我是一名 Excel VBA 程序员,最近发现了 Power Query 和 Power BI。
通常,我会收到更改要求,例如:
进入一种非旋转版本,如下所示:
这完全可以在 VBA 中完成,但是看了几个 Power Query 视频(现在订购了三本书!)似乎在 Power Query 中完成效率更高。
我了解了总体思路(例如,从分隔列表中创建 table)但不知道实际步骤的语言。我真的很想学习这些新工具。
我可以买元音吗? Phone朋友?
- 使用 From Table
将 table 导入 Power Query
- 单击第二列并从功能区中选择 "Split Column | By Delimiter"。选择逗号作为分隔符并单击确定。
- 右键单击第一列并选择 "Unpivot Other Columns"。
- 单击“属性”列,然后单击功能区中的 "Remove Columns"。
如果您转到高级编辑器,您可以看到用于生成此代码的代码:
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"
我是一名 Excel VBA 程序员,最近发现了 Power Query 和 Power BI。
通常,我会收到更改要求,例如:
进入一种非旋转版本,如下所示:
这完全可以在 VBA 中完成,但是看了几个 Power Query 视频(现在订购了三本书!)似乎在 Power Query 中完成效率更高。
我了解了总体思路(例如,从分隔列表中创建 table)但不知道实际步骤的语言。我真的很想学习这些新工具。
我可以买元音吗? Phone朋友?
- 使用 From Table 将 table 导入 Power Query
- 单击第二列并从功能区中选择 "Split Column | By Delimiter"。选择逗号作为分隔符并单击确定。
- 右键单击第一列并选择 "Unpivot Other Columns"。
- 单击“属性”列,然后单击功能区中的 "Remove Columns"。
如果您转到高级编辑器,您可以看到用于生成此代码的代码:
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"