【问题标题】:Excel 2013 sorting with mixed data and different formatsExcel 2013 使用混合数据和不同格式进行排序
【发布时间】:2016-08-31 17:21:39
【问题描述】:

我一直在对如何使用 excel 对混合数据进行排序进行广泛的研究,但我还没有找到解决方案。下面是一个简短的列表,类似于我想要排序的内容。

2B
4C
A-2
6A-1
NA3
NA5
7F
10A
6A
HC-V
9J

我希望数据先按数字排序,然后按字母排序。如下:

2B 
4C
6A
6A-1
7F
9J
10A
A-2
HC-V
NA3
NA5

如果数值不超过 9,Excel 可以做到这一点。一旦将 10 放入其中,它会将 10 放在列表的开头,就好像它是最小的数字一样(我知道它不知道任何更好,因为这就是它的编程方式)。我已经研究过使用辅助列,但由于我的数据没有标准格式,因此无法弄清楚如何将数字与字母分开以使其工作。有没有人有任何建议如何获得以“9”和“A”开头的数据点之间的 10?

谢谢!

【问题讨论】:

  • 问题在于 Excel 会逐个字符地对文本进行排序,所以由于10A 的第一个字符是1,Excel 会将其放在2B 的前面。要解决此问题,您需要解析这些部分,并将前面的数字设为 2 位数字,以便 2B02B 或将每个部分分隔到自己的单元格中,然后按顺序对每一列进行排序。

标签: excel sorting


【解决方案1】:

问题在于 Excel 会逐个字符地对文本进行排序,因此由于10A 的第一个字符是1,Excel 会将其放在2B 的前面。

要解决此问题,您需要解析这些部分并将前面的数字设为 2 位数字,以便 2B02B 或将每个部分分隔到自己的单元格中,然后按顺序对每一列进行排序。

要做第一个

在一个空列的第一个单元格中输入以下公式:

=IF(AND(ISNUMBER(--LEFT(A1,1)),NOT(ISNUMBER(--LEFT(A1,2)))),TEXT(--LEFT(A1,1),"00") & MID(A1,2,999),A1)

然后复制/填写。

不,你可以在新列上排序:

如果您确实想看到该列,您可以随时隐藏它。

【讨论】:

  • 这太棒了!感谢您的帮助!
猜你喜欢
  • 2013-08-22
  • 2018-10-17
  • 1970-01-01
  • 2012-11-07
  • 2015-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
相关资源
最近更新 更多