Excel:如何在包含相同值的第一个连续行块之后排列相似的值

Excel:如何在包含相同值的第一个连续行块之后排列相似的值

我有一张 Excel 工作表,其中某一列的值重复且位于不连续的行中。这些值未按任何特定顺序排序。

我想将所有包含相同值的行放在一起,但不使用排序功能。我想将包含下一个出现的值的行放在一起,紧接着包含该值的第一个连续行块

例如:如果原始值按以下顺序排列:

1 John
2 John
3 Bob
4 Mary
5 Mary
6 John
7 Bob
8 Bob
9 Mary
10 Bob

我想要以下内容:

1 John
2 John
6 John
3 Bob
7 Bob
8 Bob
10 Bob
4 Mary
5 Mary
9 Mary

请注意,它们仍然没有按字母顺序排序。我已将第 2、3 和 4 次出现的 Bob 移至第 1 个 Bob 之后的行;我已将第 3 次出现的 John 移至第 1 个连续块约翰等等。

我应该使用什么步骤顺序来实现上述结果,而无需编写宏?如果没有宏就不可能,那么我可以使用宏,但首选是不使用任何宏。

答案1

我认为最简单的方法是使用 Power Query。

  • 选择表格中的某个单元格
  • Data=> Get&Transform=> Get Data=>From Table/Range
  • 当 PQ 编辑器打开时:
    • 选择Names
    • Group by
      • operation: All Rows
  • 然后仅展开结果列(包含表格)(通过单击列顶部的双头箭头)选择“数字”列即可展开
  • 如果您希望数字列优先,您可以重新排列这些列

相关内容