搜索
查看: 2929|回复: 2

提取数字经典方法

[复制链接]

978

主题

1094

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
15950
发表于 2017-12-19 12:52:58 | 显示全部楼层 |阅读模式
=MID(TRIM(O2),MIN(FIND({0,1,2,3,4,5,6,7,8,9},TRIM(O2)&"0123456789")),2*LEN(TRIM(O2))-LENB(TRIM(O2)))
回复

使用道具 举报

978

主题

1094

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
15950
 楼主| 发表于 2017-12-19 12:54:25 | 显示全部楼层
第一,如果需要提取数字的源数据没有字母出现,只是汉字和数字,可以使用这个公式提取数字:
  =MIDB(A2,SEARCHB("?",A2),2*LEN(A2)-LENB(A2))

  第二,如果需要提取数字的源数据没有字母,并且数字不是0开始的,可以使用这两种方法实现。

  1.使用excel数组公式提取数字:
  =-LOOKUP(1,-MID(A2,MIN(FIND(ROW($1:$10)-1,A2&1/17)),ROW($1:$15)))

  2.通过两端对齐(内容重排)实现excel提取数字

  步骤:选择需要提取数字的单元格:A2:A5,复制到E1:E4区域。

  将E列调整为只显示一个汉字的宽度,然后单击开始——编辑——填充——两端对齐。(2003此功能成为内容重排,2010称为两端对齐)。

  选择第一个数字开始到最后一个单元格,将文本型数值转换为数字。

  单击E1单元格,数据——筛选,筛选大于0,这样就将数字筛选提取出来了。然后将提取出来的数字复制到目标单元格区域就完成了excel提取数字。
回复

使用道具 举报

978

主题

1094

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
15950
 楼主| 发表于 2017-12-20 16:22:54 | 显示全部楼层

优化后

=IFERROR(VALUE(MID(TRIM(M2),MIN(FIND({0,1,2,3,4,5,6,7,8,9},TRIM(M2)&"0123456789")),2*LEN(TRIM(M2))-LENB(TRIM(M2)))),0)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

表格智创网

网站简介:表格智创网,是一家以表格设计和技能分享的专业社区,由会计帮帮网投资建设,尽专业,助提高专业技能。

表格智创网欢迎您!

联系我们

  • 工作时间:早上9:00-16:00
  • 客服电话:18668755857
  • 本站网址:www.excelwps.com
  • 淘宝店址:kjbbw.taobao.com

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表