按多个值对行进行分组

按多个值对行进行分组

我有以下电子表格:

country | year | percent | isRight | isCenter
Austria | 2016 | 35.1    | T       |
Austria | 2016 | 21.3    |         |  
Austria | 2016 | 11.3    |         | T
Austria | 2016 | 11.1    |         | T
Brazil  | 2016 | 28.28   | T       | 
Brazil  | 2016 | 11.3    |         | T
Brazil  | 2016 | 25.3    |         | T 
Brazil  | 2016 | 4.5     |         | T
...     | ...  | ...     | ...     | ...

我拥有许多年前许多国家的数据 - 通常每 4 年左右更新一次。我想将这些数据转换为以下格式:

country | year | right   | center
Austria | 2016 | 35.1    | 25.3
Brazil  | 2016 | 28.28   | 41.1
...     | ...  | ...     | ...     | ...

所以我在这里:

  • 忽略 isRight 和 isCenter 都为空的任何单元格。
  • 按国家和年份分组。
  • 将 isRight 和 isCenter 的百分比相加,并将它们添加到新列中:right 和 center。

有什么指示可以告诉我如何在 Excel 中执行此操作而无需手动执行?

答案1

如果您愿意克服一些困难,您可以在没有 VBA 的情况下快速完成此操作,但如果您要重复执行此操作,我建议使用 VBA 解决方案。

首先创建一个连接“国家”和“年份”的新列,如下所示:

=country&";"&year

我会将其复制到新工作表的列中(或现有工作表上的新区域 - 您希望新列表所在的任何位置)。然后,对该列表执行“删除重复项”。删除重复项后,使用分号分隔符执行文本到列。然后,先按年份排序,然后按国家/地区排序。这样您就可以获得国家/地区和年份的唯一列表,并按您想要的方式对其进行分组。

从这里开始,只需要几个 sumifs 公式。有了新的唯一国家和年份记录列表,

=sumifs(original percent column, original country column, country, original year column, year, original right column, T

等等。它看起来有点像:

在此处输入图片描述

和:

在此处输入图片描述

相关内容