请问Excel中的一列数据,每个单元格里面都是字母+数字的组合,如何按照数字的大小进行排序?

如题所述

方法一:使用分列功能辅助排序
选中要排序的列,点击【数据】选项卡下的【分列】,然后在弹出来的【文本分列向导对话框】中选择【固定宽度】或【分隔符号】,根据实际情况设置分隔位置或分隔符,将字母和数字分开到不同的列;
点击【目标区域】,选择一个空白的单元格,点击【完成】,完成分列操作;
选择分列后的数据区域,点击【数据】选项卡下的【排序】,然后在弹出来的【排序】对话框中设置排序条件,先按数字排序,再按字母排序,达到最终排序的效果;
删除辅助列,即可得到按字母数字组合排序的结果。
方法二:提取数字列进行排序
在一个空白列中输入公式 =MID (A2,2,99) ,其中A2是要排序的单元格,2是数字开始的位置,99是数字的最大长度,可以根据实际情况调整;
拖动公式向下填充,提取出所有单元格中的数字部分;
选择提取后的数字列和原始数据列,点击【数据】选项卡下的【排序】,然后在弹出来的【排序】对话框中设置排序条件,按数字列进行升序或降序排序;
删除辅助列,即可得到按字母数字组合排序的结果。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-04-16
用代码的自定义函数可以实现。先得学会启用宏。
第2个回答  2023-04-09

公式为:

=TEXTJOIN(",",1,LEFT(A1)&SORT(--MID(FILTERXML("<A><B>"&SUBSTITUTE(A1,",","</B><B>")&"</B></A>","//B"),2,9)))

如图所示:

注:公式在office2021下完成,如果你的不能出正常结果,是软件版本低,不支持。

相似回答