Excel如何取出一段文字中的数字
- 2022-12-18
- 来源/作者: Wps Office教程网/ 菜鸟图库
- 153 次浏览
这要分好几情况:
1.要取前几位,或者后几位,如果都是数值,那么可以用left( )和right( )函数。
2.要取的是中间的几位,那么可以用MID(text,start_num,num_chars)函数。
3.还有一种是混合类型的,比如“11年秋书法竞赛一等奖(1000元)”、“11年秋英语朗诵比赛二等奖(500元)”,要取出其中的1000和500,那需要的函数就比较复杂,但也是可以实现的。
我们就是要在EXCEL中将单元格中数字和字符混合在一起的部分自动地把数字取出来。
一般公式:
=LOOKUP(9E+307,–MIDB(A1,SEARCHB(“?”,A1),ROW(INDIRECT(“1:”&LEN(A1)))))
注:A1指要取出文字的单元格,MID前面是两个-,公式里的引号要记得全部改为英文的引号。(下同)
但是,这样做对小数不适用,我们再加以改进:
=LOOKUP(9E+307,–MID(A1,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A1&1234567890)),ROW(INDIRECT(“1:”&LEN(A1)))))
但你会发现,我们上面的例子要的是后面的那个数字,而不是前面的,那么就还得改进,我们用right(A1,7)取后7位替换原公式中的A1,如果如下:
=LOOKUP(9E+307,–MID(right(A1,7),MIN(FIND({0;1;2;3;4;5;6;7;8;9},right(A1,7)&1234567890)),ROW(INDIRECT(“1:”&LEN(right(A1,7))))))
至此,我们终于解决了上面的问题。