Excel:使用逗号分隔值创建数据透视表并添加自定义筛选器

问题描述 投票:0回答:1

我有一个文件,我需要将数据完全转换为我的团队可用的内容。这是我老板的要求。

我有这样的数据:

功能ID 受影响的设备 决定
无线网络 2018_iPhone10、2021_iPhone11、2022_iPhone12 保留
蓝牙 2019_iPhone11、2020_iPhone12、2021_iPhone13 保留
ActnBtn 2023_iPhone15、2024_iPhone16 掉落

这需要看起来像这样,最好在数据透视表中:

过滤依据:iPhone (iPhone10、iPhone11、iPhone12 等)

功能ID 2018 2019 2020 2021 2022 2023 2024
无线网络 保留 保留 保留 保留 保留 保留 保留
蓝牙 保留 保留 保留 保留 保留 保留 保留
ActnBtn -- -- -- -- -- 掉落 掉落

我尝试过PowerQuery编辑器,但我是一个完全的新手,以前从未使用过它。有人告诉我这是用于我的查询的最佳工具...

excel pivot-table powerquery
1个回答
0
投票

将数据从 Excel 加载到 PowerQuery 并标准化,您可以在执行过程中记录您的步骤,例如:

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Feature ID", type text}, {"Impacted Device", type text}, {"Decision", type text}}),
    #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(#"Changed Type", {{"Impacted Device", Splitter.SplitTextByDelimiter(", ", QuoteStyle.Csv), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Impacted Device"),
    #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Impacted Device", type text}}),
    #"Split Column by Delimiter1" = Table.SplitColumn(#"Changed Type1", "Impacted Device", Splitter.SplitTextByDelimiter("_", QuoteStyle.Csv), {"Impacted Device.1", "Impacted Device.2"}),
    #"Changed Type2" = Table.TransformColumnTypes(#"Split Column by Delimiter1",{{"Impacted Device.1", Int64.Type}, {"Impacted Device.2", type text}}),
    #"Renamed Columns" = Table.RenameColumns(#"Changed Type2",{{"Impacted Device.1", "Year"}, {"Impacted Device.2", "Impacted device"}})
in
    #"Renamed Columns"

enter image description here

将新表加载回 Excel,确保选中“将此数据添加到数据模型”选项:

enter image description here

在“Power Pivot”选项卡中创建一个新度量:

=CONCATENATEX(Table1,Table1[Decision],",")

现在您可以使用数据模型作为源创建一个新的数据透视表:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.