根据子串自定义排序

时间:2015-07-29 20:54:23

标签: excel sorting excel-2013

我想在Excel 2013中按字母和数字对以下列表进行排序。有A-X之类的值出现在数字之后。

A-1
A-20
A-2
A-X
B-1
B-2
B-20
B-7
B-X
B-9

如何为此列创建自定义排序过滤器以生成:

A-1
A-2
A-20
A-X
B-1
B-2
B-7
B-9
B-20
B-X

1 个答案:

答案 0 :(得分:0)

我建议将整个数据列复制到同一电子表格中的另一列,然后将文本应用于该副本上的列(DATA> Data Tools),并使用连字符-作为分隔符。这应该将副本分成两列,基于您的示例仅一个文本,另一个是数字和字母的混合。基于仅文本列(A到Z)然后按混合列(最小到最大)对工作表进行排序:

SO31710925 example

然后删除两个剩余列,如果不再需要。当按" size"排序时,Excel会考虑字母前的数字。虽然sort orders vary by locale setting

以上假设您的数据只是一个示例,并且您希望应用相同的原则来说明A-3b-44D-z等等。但是,因为您提到自定义排序过滤器可能是您从上面的数据中有几个摘录,并希望每个都按给定的顺序排序,例如将B-7A-XA-2(按此顺序)按顺序排序:A-2A-XB-7,自定义列表可以更合适。为此,请转到FILE>选项>高级>常规并单击编辑自定义列表...

然后点击导入,选择所需顺序的综合列表(或在列表条目下输入:)和添加确定< / KBD>。现在,Sort模式中的Order选项之一应该是该列表。