excel混合文本提取数字
更新时间: 2025-08-06 03:35:12
1、首先要分析数据内容,根据不同的类型,使用不同的方法。
2、分析这个表格,可以发现,除了数字外,就是汉字,在双字节字符中,每个汉字算两个字节,利用此特点,可以算出有多少个汉字、多少个数字,单字节字符数用LEN函数:=LEN(A2)。
3、双字节字节数用LENB函数,注意下两者的区分,单字节指字符个数,双字节指字节个数:=LENB(A2)。
4、二者相减,即可得到文字的个数:=LENB(A2)-LEN(A2)。
5、再用总字符数减去文字个数,即得到要提取出来的数字个数:=LEN(A2)-(LENB(A2)-LEN(A2)),去掉括号,合并起来,公式为:=LEN(A2)*2-LENB(A2)。
6、知道了数字个数,再知道数字开始的位置,就可以用MID函数将数字提取出来了,但是现在不知道数字是从什么位置开始的,可以使用SEARCHB双字节查找函数+通配符?来查询单字节出现的位置:=SEARCHB(?,A2)。
7、这样提取公式就有了,提取函数也要用双字节函数:=MIDB(A2,SEARCHB(?,A2),LEN(A2)*2-LENB(A2)),如果用单字节函数也可以,但公式稍长些:=MID(A2,INT(SEARCHB(?,A2)/2)+1,LEN(A2)*2-LENB(A2))。
8、提取结果是文本格式,如果要转为常规的数字格式,可以在公式前加上--,或者*1,来转换:=--MIDB(A2,SEARCHB(?,A2),LEN(A2)*2-LENB(A2)),转换格式后,可以进行下一步的统计运算。
9、如果文字中有空格,直接提取就会出去,需要对原来的内容进行去空格替换后,再提取:=--MIDB(SUBSTITUTE(A2, ,),SEARCHB(?,SUBSTITUTE(A2, ,)),LEN(SUBSTITUTE(A2, ,))*2-LENB(SUBSTITUTE(A2, ,)))。
10、但是上面的方法,只能用于除了数字就是文字的内容提取,如果除此之外,还有其它的字母、符号等单字节字符,就会出错。
11、对于这种不定型的,可以用数组公式进行提取,从每个字符开始,取出1~若干个字符(比如10个),再加上运算符号进行判断,取出的是不是数值,再用MAX函数从中取出是数值的最多数字:=MAX(IFERROR(--MID(A2,ROW($1:$30),COLUMN($A:$J)),)),在输入数组公式时,需要同时按住Ctrl+Shift+Enter结束公式编辑,公式会自动生成一对“{}”。
12、当然,也可以不用上面的数组公式,利用LOOKUP函数的向后兼容性,来提取出数字:=-LOOKUP(1,-MID(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A2&0123456789;)),ROW($1:$10))),此公式先判断数字出现的最小位置,再从此位置开始依次取出若干个字符,最后用LOOKUP函数取出最长数字串的那个数字,即达目的。
13、虽然利用公式,可以从各种不同的混合文本中找出规律提取出数字,但是还是应该养成良好的习惯,在制作表格时,就将其分在不同的列中,有助于后续统计。
excel混合文本提取数字 相关文章
- 暴雨天遛狗如何防雷击?4个气象安全指...
- 西北旅游8天7晚最佳路线是什么?这条...
- 几月去青海最好?这份超全旅行攻略告诉...
- 四川省成都市邛崃市气象台发布暴雨橙色...
- 如何用黄金时刻拍出光影大片?摄影师必...
- 广东省广州市气象台发布雷雨大风黄色预...
- 广东省佛山市南海区气象台发布暴雨黄色...
- 广东省佛山市气象台发布暴雨黄色预警信...
- 广东省佛山市顺德区气象台发布暴雨黄色...
- 广东省云浮市新兴县气象台发布暴雨黄色...
- 江西省气象台发布暴雨蓝色预警信号
- 广东省江门市开平市气象台发布暴雨橙色...
- 广东省清远市英德市气象台发布暴雨红色...
- 河南省濮阳市台前县气象台发布暴雨橙色...
- 黑龙江省哈尔滨市呼兰区气象台发布暴雨...
- 四川省成都市大邑县气象台发布暴雨黄色...
- 四川省雅安市名山区气象台发布暴雨黄色...
- 广东省佛山市顺德区气象台发布雷雨大风...
- 广东省茂名市气象台发布雷雨大风黄色预...
- 云南省昆明市东川区气象台发布雷电黄色...