Excel 2016含末尾字母的ID列自定义公式排序咨询
Excel 2016含末尾字母的ID列自定义公式排序咨询
嗨,我来帮你搞定这个Excel排序的问题~ 你想要把这些数字在前、末尾带字母的ID,按前面的纯数字部分排序,忽略后面的字母,对吧?
给你一个简单靠谱的方法,用辅助列+自定义公式就能实现,完全适配Excel 2016:
步骤1:添加辅助列提取纯数字部分
假设你的ID列在A列,在旁边插入一个空白列(比如B列),在B2单元格(对应A2的第一个ID)输入这个公式:
=VALUE(LEFT(A2,SUMPRODUCT(--ISNUMBER(--MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)))))
输入完直接回车就行,不用按特殊组合键~ 然后把公式下拉填充到所有ID行。
这个公式的逻辑很简单:逐个检查ID里的每个字符是不是数字,统计出开头连续数字的长度,然后提取出这部分内容并转成数值。比如129A会提取成129,290BC提取成290,纯数字的3632就直接返回3632,完美贴合你的需求。
步骤2:按辅助列排序
选中整个数据区域(包括A列的ID和B列的辅助列),点击顶部菜单栏的【数据】选项卡,找到【排序】按钮:
- 主要关键字选你刚建的辅助列(比如B列)
- 排序依据选【数值】
- 次序选【升序】
点击确定就能得到你想要的排序结果啦!
排序完成后,要是觉得辅助列碍眼,直接把它隐藏或者删掉就好,不影响排序后的ID列。
小提示:如果你的ID里有小写字母也没关系,这个公式一样能识别;但如果ID中间混着字母(比如12A34),这个方法就不适用了,不过看你的示例都是数字在前字母在后,完全没问题~
备注:内容来源于stack exchange,提问作者Laurent
相关产品推荐
相关产品推荐

