如何在 Excel 中创建交叉引用表?

如何在 Excel 中创建交叉引用表?

我在 Excel 中有一个如下值表:

Col1 Col2
---- ----
 a    1
 b    2
 c    3
 d    1
 e    1
 f    2

我想要根据某些功能创建结果交叉引用表:

   NewCol1     NewCol2
   -------     -------
      1        a, d, e
      2        b, f
      3        c

我该怎么做?有可能吗?

答案1

将光标放在表格中的任意位置,然后使用“数据”>“获取和转换数据”>“从表格/范围”。如果您使用的是早期版本的 Excel,则可以通过 Power Query 插件访问。

Power Query 编辑器应该打开并显示以下内容:

在此处输入图片描述

通过单击标题选择 Col2,然后使用 Home>Transform>Group By,如下所示:

在此处输入图片描述

单击“确定”后,您将看到“Summing Col1”导致错误:

在此处输入图片描述

使用“主页”>“查询”>“高级编辑器”,这样你就会看到:

在此处输入图片描述

现在将以下部分修改一下:

List.Sum([Col1])

对此:

Text.Combine([Col1],", ")

因此你有这个:

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Col1", type text}, {"Col2", Int64.Type}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"Col2"}, {{"Col1", each Text.Combine([Col1],", "), type text}})
in
    #"Grouped Rows"

当你点击确定后你将得到你想要的结果:

在此处输入图片描述

现在,您可以使用主页>关闭并加载将结果加载到工作簿中。当新数据添加到源表时,只需右键单击工作簿中的表并选择“刷新”即可再次运行转换。

相关内容