如何在 Excel 中设置多条排序规则对某一列进行排序?

如何在 Excel 中设置多条排序规则对某一列进行排序?

我有一个邮件地址列表,假设我们有这个列表

[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]

在 Excel 中,如何设置 2 条排序规则?我喜欢第一个排序规则,即我们在 @ 符号后按字母顺序排序。

第二条排序规则是,如果@符号后面的部分相同,则按字母顺序对@之前的部分进行排序。

因此,基本上,如果我们应用以下两个排序规则,上面的列表将如下所示:

[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]

我至少知道如何在 Excel 中设置第一条规则。方法是选择要排序的列,将其复制两次到另外两列,然后在第二列中选择所有邮件地址,按“列中的文本”,当您看到符号 @ 时将邮件分开。然后,第一列是实际的邮件地址,第二列是 @ 之前的部分,第三列是 @ 之后的部分。现在只需让 @ 之后的列排序,您就完成了。

但我不知道如何同时考虑这两条规则......?:S

我真的希望我的问题清楚,因为否则我明天将在工作中度过漫长的一天:P

答案1

您几乎已经完成了,您需要设置第二级排序(通过单击“添加级别”:

在此处输入图片描述

已排序的电子邮件:

在此处输入图片描述

请注意,每个级别的排序顺序与其他级别无关

答案2

您可以将单元格 B1 设置为 Mid(A1, Pos(A1, '@') + 1, Len(A1) - Pos(A1, '@'),然后将其复制到该列。然后复制 B 列并按值粘贴到其自身上。然后使用 B 列(电子邮件域)作为顶层并使用 A 列作为第二层进行排序。

相关内容