Excel表格中经常会出现“文字+数字”混合在同一个单元格的情况,例如“深圳影盟公司52007”“订单编号A12345”等。如果只需要提取最后面的数字,手动复制不仅麻烦,数据一更新还得重新处理。其实利用LOOKUP和RIGHT函数组合,就能自动完成提取。
一、用公式提取末尾数字
假设A2单元格中是“深圳影盟公司52007”,需要把末尾的52007提取到B2,可以输入:
=-LOOKUP(1,-RIGHT(A2,ROW($1:$10)))
按下回车后,B2就会得到52007。向下填充公式后,其他数据也能同步处理。

二、这个公式是怎么工作的
公式可以拆成两部分理解。RIGHT(A2,ROW($1:$10))会从单元格右侧开始,依次取出1到10个字符。遇到纯数字时,前面的负号会将其转换成数值;包含中文的内容则无法转换。
接下来,LOOKUP会忽略无法计算的错误值,并找到最后一个有效数字。最外层的负号再把结果恢复成正数,因此最终得到需要提取的数字。
三、数字在左侧怎么办
如果数据格式刚好相反,例如A2是“52007深圳影盟公司”,想提取开头的数字,只需要把RIGHT换成LEFT:
=-LOOKUP(1,-LEFT(A2,ROW($1:$10)))
这样就能从左侧自动识别数字。

四、数字超过10位怎么处理
公式中的ROW($1:$10)代表最多检查10位。如果实际数据可能存在15位、20位数字,可以将10修改成20,例如:
=-LOOKUP(1,-RIGHT(A2,ROW($1:$20)))
设置范围时可以适当留出余量,不会影响正常提取。
五、总结
遇到中文和数字混合的数据,不必每次手动分列。利用LOOKUP、RIGHT和ROW组合,就可以自动提取末尾数字;如果数字位于左侧,则将RIGHT改成LEFT即可。对于需要长期处理、会持续更新的数据,这种公式方法会更加方便。
评论 (0)