如何在 Excel 中创建基于文本的交叉表(数据透视表)?

如何在 Excel 中创建基于文本的交叉表(数据透视表)?

假设我有以下问题列表:

  • 优先级:1-5(紧急程度)
  • 影响:1-5(有多少人会受到该问题的影响)
  • 描述:15 个字符(非常简短的描述)

我希望看到的是:

            impact              1             2              3            ...
priority
    1                     network fail                     password blocked
    2                     badge issue
    3                                     toolbar hidden
    ...

我在网上看到的只有非常有限的例子,似乎无法应对不同文本的显示

是否可以轻松做到这一点或者是否需要更复杂的 VBA?

如果出现多个值,则CELL只需附加“,”

编辑:

Sample input data
Description             Impact             Priority
network fail              1                    1
toolbar hidden            2                    3
password blocked          3                    1
...

答案1

我的答案Stackoverflow 上也有类似的问题。
由于您使用的是 Excel 2013,因此您必须安装免费的 MS 插件Power Query*

按着这些次序:

  • 在 Power Query 中导入数据(将输入定义为表格)
    转到数据 > 获取和转换 > 从表格(Excel 2016)或 Power Query > Excel 数据 > 从表格(Excel 2013 和 2010)
  • 选择“影响”列
    • 在功能区变换上,选择数据透视列
      • 值列 = 描述
      • 聚合价值函数 = 无聚合
  • 单击“主页”选项卡中的“关闭并加载”

M 代码是这个

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Description", type text}, {"Impact", Int64.Type}, {"Priority", Int64.Type}}),
    #"Pivoted Column" = Table.Pivot(Table.TransformColumnTypes(#"Changed Type", {{"Impact", type text}}, "de-CH"), List.Distinct(Table.TransformColumnTypes(#"Changed Type", {{"Impact", type text}}, "de-CH")[Impact]), "Impact", "Description")
in
    #"Pivoted Column"

.* 从 MS Office 2016 开始,它已完全集成到 Excel 中获取并转换功能。

相关内容