excel 如何提取字符串中的数字

时间:2022-07-25 08:43:29 

Excel中提取字符串的常见形式有以下三种:第一,从原有文本中截取一部分用于形成新的文本;第二,文本和数字分离;第三,提取文本中的数字。

提取字符串的常用函数有left(rihgt)、mid、substitute等等。LEFT函数是从左向右提取,RIGHT函数是从右向左提取,MID函数也是从左向右提取,但不一定是从第一个字符起,可以从中间开始提取。

第一题,从下图所示的E-mail地址中提取“@”字符以前的文本作为账号。

excel 如何提取字符串中的数字

上图所示的E-mail地址中包含用户的账号,但是账号长短不一,单独使用LEFT函数无法提取,需要配合FIND函数来实现。

FIND函数的用法是返回一个字符串在另一个字符串中出现的起始位置。FIND函数的格式是:FIND(要查找的文本,包含要查找文本的文本, 指定开始进行查找的字符)。

本题的思路是使用FIND("@",A19)返回"@"在A19单元格的位置,然后再使用LEFT函数从A19单元格从最左边开始提取到"@"之前的字符。

因此,第一题的公式为:=LEFT(A19,FIND("@",A19)-1),下拉即可完成。

另外也可以使用数组公式:=LEFT(A19:B25,FIND("@",A19:B25)-1),三键结束,下拉。

第二题,将下图所示的电话号码的区号和号码分别提取出来。

excel 如何提取字符串中的数字

区号的提取方法和第一题一样,公式为:=LEFT(A29,FIND("-",A29)-1)。

后面的号码的提取就是用LEN函数来得到A29单元格的长度减去包括“-”符号之前的值做为right函数的Num_chars值为需要提取的字符数。公式为:=RIGHT(A29,LEN(A29)-FIND("-",A29))。

上面的公式涉及到一个很简单但很实用的函数,就是LEN函数。它的功能就是返回文本字符串中的字符个数。LEN函数的语法是:LEN(text)。Text就是要查找其长度的文本。空格将作为字符进行计数。

第三题:从下图所示的15位和18位身份证号码中分别提取出生日期,性别,年龄。

excel 如何提取字符串中的数字

第一,身份证号码对应的性别:
15位号码的最后一位为奇数是男,偶数是女;18位号码的第17位为奇数是男,偶数是女。
第二,身份证号码对应的出生日期:
15位号码的:7~8位为出生年份(2位),9~10位为出生月份,11~12位为出生日期。
18位号码的:7~10位为出生年份,11~12位为出生月份,13~14位为出生日期。

性别的提取需要嵌套多个函数完成。用IF函数来判断MOD函数的值,从而判断出性别是男或女。公式为:=IF(MOD(RIGHT(LEFT(A37,17)),2),"男","女")

其中,IF函数的语法结构:IF(条件,结果1,结果2)。对满足条件的数据进行处理,条件满足则输出结果1,不满足则输出结果2。可以省略结果1或结果2,但不能同时省略。

IF()函数,是一个逻辑判断函数。如果条件为真,返回 TRUE,TRUE 值为1,否则就返回FALSE ,FALSE 值为0。

性别的提取另外还有几种公式都可以实现。

第一,=IF(ISODD(MID(A37,8+LEN(A37)/2,1)),"男","女")

第二,=IF(ISODD(MID(A37,IF(LEN(A37)=15,15,17),1)),"男","女")

第三,=IF(MOD(MID(A37,15,3),2),"男","女")

出生日期的提取,可以使用公式:=TEXT(IF(LEN(A37)=15,19,"")&MID(A37,7,6+IF(LEN(A37)=18,2)),"#-00-00"),然后,下拉实现。

年龄公式为:=DATEDIF(TEXT(MID(A37,7,6+2*(LEN(A37)=18)),"#-00-00"),NOW(),"y"),下拉。

第四题:分别提取下图所示联系方式中的姓名和电话。

excel 如何提取字符串中的数字

第一种方法:
提取电话,在E3单元格输入公式:=MID(A3,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A3&"0123456789")),LEN(A3)),然后下拉。
姓名提取,就直接使用:=SUBSTITUTE(A3,E3,""),下拉,就OK了。

第二种方法:
提取姓名的公式为:=LEFT(A3,LENB(A3)-LEN(A3))
提取电话的公式为:=RIGHT(A3,2*LEN(A3)-LENB(A3))。

第五题:提取下图所示单元格中的数字。

excel 如何提取字符串中的数字

有两种方法都可以实现:第一,使用自定义函数。第二,使用嵌套函数公式。

使用下面两个公式之任意一个,都可以实现:第一:=-LOOKUP(,-MID(A11,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A11&1234567890)),ROW($1:$15)))
第二:=-LOOKUP(,-MIDB(A11,SEARCHB("?",A11),ROW($1:$15)))

但是上面公式中,如果源数据的数字之前有0,LOOKUP在查找时就会被忽略掉。比如B11单元格中的235号,如果是0235号,那么使用上面的公式,0就会被忽略。

标签:excel提取字符串中的数字
0
投稿

猜你喜欢

  • Win8添加虚拟网卡网络适配器的方法

    2023-09-03 20:09:39
  • Mac操作指南:如何一键退出所有应用程序?

    2023-03-10 04:29:52
  • Win11怎样查看cpu型号?Win11系统查看cpu型号的方法教程

    2022-02-23 23:57:59
  • WPS PPT用格式刷给流程图图形更改格式的方法

    2022-03-08 05:22:59
  • ITunes如何设置音视频画面质量?ITunes设置音视频画面质量的方法

    2022-06-28 09:03:51
  • Win8开机蓝屏错误代码0x000008e的解决方法

    2022-05-24 01:53:06
  • Win7旗舰版IE浏览器打开后自动关闭怎么解决?

    2022-02-10 00:02:42
  • 火狐浏览器怎么样?火狐浏览器都有哪些优缺点

    2023-04-11 13:08:12
  • Excel怎么添加修改图表标识

    2022-05-18 00:26:58
  • win10没声音了怎么办?win10没声音了怎么恢复?

    2022-01-29 02:23:21
  • Excel怎么快速删除工作表中空白行

    2022-03-14 06:13:22
  • excel表格中如何换行?

    2022-09-03 02:26:36
  • GIF制作器能压缩图片吗?GIF制作器压缩图片的方法

    2023-04-09 07:55:18
  • Excel2019怎么求加权平均值?Excel2019加权平均值计算教程

    2023-11-02 23:16:36
  • WPS 如何在word中嵌入文件

    2023-11-17 21:19:51
  • ​电脑版wps表格如何将文本转换为数字

    2022-10-25 11:25:50
  • win8系统安装冒险岛不兼容且提示“此程序存在已知兼容性问题”的解决方法

    2022-06-01 23:08:44
  • wps表格怎样批量删除字体

    2022-11-06 20:22:54
  • excel如何按颜色筛选

    2023-11-28 23:52:38
  • 黄油相机如何进行抠图?黄油相机抠图的方法

    2022-10-12 11:31:56
  • asp之家 电脑教程 m.aspxhome.com