中企动力 > 商学院 > excel提取前几个字符
  • ?

    Excel如何提取身份证号中的出生日期?

    凌无卿

    展开

    在我们平时的工作生活中经常会接触到身份证号,如果现在有很多人的身份证号,要统计这些人的出生日期,如何批量从很多人的身份证号中提取出来出生日期呢?下面我们以15个人的身份证号为例,批量提取他们的出生日期:

    在C2单元格中输入公式:=TEXT(MID(B2,7,8),"0000-00-00")

    这个公式的含义是,从B2单元格中的从左向右数第7个字符开始提取出来8个字符,因为身份证号中代表出生年月日的就是身份证号的第7位开始向右的8个数字。提取出来后放到TEXT文本函数中转换成特定格式的文本,这里的0000-00-00就是用横杠分隔取出的8个数字。

    回车后:

    这样就提取出来了B2单元格的出生年月日,然后向下填充公式即可。

    这样所有人的身份证号中的出生年月日都被提取出来了。是不是很省事呢?

    如果公式换成这样:=TEXT(MID(B2,7,8),"0000年00月00日") 会得出什么结果呢?请大家自己试试吧。

    注意:

    (1)以上方法提取出来的是文本格式的日期,如果要提取出来是数字格式的日期,可以在公式中的TEXT前面加上两个负号转换即可,例如:=--(TEXT(MID(B2,7,8),"0000-00-00"))

    回车后:

    然后将公式向下填充得到:

    怎么全是数字?不要急,其实这些数字本质上是日期,选中这些数字,点击鼠标右键,选择【设置单元格格式】==》【数字】==》【日期】选择一种日期格式即可。

    这样就现出日期的原形了。

    (2)如果一个日期是数字格式,如下图中的A1单元格中是数字26639,如何转换成日期格式呢?只需在B1单元个中输入:=TEXT(A1,"yyyy年m月d日")

    回车后:

    这样就转换成日期格式了。

    补充知识:

    (1)Text函数:其功能是将数值转化为自己想要的文本格式

    Text函数语法:

    TEXT(value, format_text)

    TEXT 函数语法具有下列参数:

    value :数值、计算结果为数值的公式,或对包含数值的单元格的引用。

    format_text:用引号括起的文本字符串的数字格式。例如,“m/d/yyyy”或“#,##0.00”。

    (2)MID函数:用于从字符串的指定位置开始,提取特定数目的字符串。

    MID函数语法:

    MID(text,start_num,num_chars)

    MID函数语法具有下列参数:

    text表示指定的字符串,一般为引用的单元格;

    start_num表示指定位置 ,即表示要从字符串的由左向右哪一位开始。

    num_chars表示指定个数,即要提取多少个字符。

    MID(A1,5,3)就是从A1单元格的第5位开始,提取3个字符。

    以上啰嗦了一大堆,不知道大家学到点知识没,反正我是学到了,哈哈!

  • ?

    提取excel表格信息只需30秒,你及格了吗?

    钱擎

    展开

    你真幸运,全世界只有1%的人关注了我的头条号

    每个公司都会有这样的文化,给员工过生日,这就涉及到记录员工的生日问题

    假如你是HR,你有员工的身份证号码,如何才能快速提取员工生日信息呢?

    举个例子:

    下图是一些员工的资料,B列是身份证号码,需要在C列提取出出生日期。

    员工信息

    提供两种方法,高手可以直接翻到文章结尾看“函数法”

    一、技巧法

    第一步

    选中B2:B118,也就是身份证号码所在的区域,单击【数据】→【分列】,在 【文本分列向导第1步】对话框中,选择【固定宽度】,单击【下一步】。

    第2步

    在 【文本分列向导第2步】对话框中,先单击第六个字符之后,再单击倒数第四个字符之前,单击【下一步】

    第3步

    在第3步对话框的预览窗口中,先单击第一列,再单击【不导入此列】,同样的方法,将第三列也设置为【不导入此列】。

    单击第二列,列数据格式选择【日期】,目标区域选择C2,完成。

    不看广告看疗效:

    结果展示图片

    本方法如果操作熟练,即便有几百数千条数据,用时也不会超过30秒。

    公式法:

    C2单元格输入以下公式:

    =--TEXT(MID(B2,7,8),"0-00-00")

    然后双击C2单元格右下角的填充柄,公式瞬间到底,妥妥的了。

    简单说说公式

    MID函数用于从字符串的指定位置开始,提取特定数目的字符串。

    MID(B2,7,8)就是从B2单元格的第7位开始,提取8位数字,结果为"19840523"。

    再使用TEXT函数,将这个字符串变成"0-00-00"的样式,结果为"1984-05-23"。

    这个时候,已经有了日期的模样,但是本身还是文本型的,所以再加上两个负号,也就是计算负数的负数,通过这么一折腾,就变成真正的日期序列了。

    技巧法适合函数公式零基础的小白菜,公式法适合有函数功底的老油条,两种方法,各有千秋

    恭喜你学会快速提取信息片段技能

    关注我的头条号,快速学会excel技能,更多技巧见往期文章

  • ?

    Excel表格中快速提取成绩排名前三的学员姓名 你会吗?

    丁诗云

    展开

    在前面两期教程中为大家讲解了LAGER函数的基础用法。那么今天龚老师就来个升级版的排名函数应用案例讲解。

    之前我们讲解的是如何按排名提取成绩。今天跟大家分享一下如何按照排名提取相对应的学员姓名。

    举例:

    如上表是,我们的学员成绩信息表。我们现在需要快速从表中提取出前三名学员姓名。

    函数公式

    =LOOKUP(1,0/(LARGE($C$2:$C$13,ROW(D1))=C2:C13),B2:B13)

    函数公式解释:

    ROW(D1):返回D1所在行的行号。

    LARGE($C$2:$C$13,ROW(D1):返回ROW(D1)对应的排名结果。

    LOOKUP(1,0/(LARGE($C$2:$C$13,ROW(D1))=C2:C13),B2:B13)用lookup函数查找学员成绩所对应的学员姓名。

    是不是又学到技巧了?记得分享哦!

  • ?

    Excel小技巧6-Excel中如何提取数字(一)

    杰罗姆

    展开

    使用公式提取单元格内的数字,要根据具体的数据结构找到某种规律从而设计出对应的公式。

    例一 数字在左侧,且数字位数固定。

    直接用公式:=left(A2,2)

    第一个参数是要提取数字的单元格,第二个参数是要提取几位(从左边算起)。对于例一的这一类数据,使用的时候根据数字的长度修改第二参数即可。

    例二:数字在左侧,数字位数不固定,但是有明显的分隔符号。

    见下面的例子:

    1、利用公式=FIND("-",A2,1)可以确定"-"的位置。

    2、find函数有三个参数,第一个参数是要找什么内容,第二个参数是从哪里找,第三个参数是从第几个字开始找(从左边算起)。

    =FIND("-",A2,1) 意思是在A2单元格找“-”,从开始位置找(左边第一位)。公式的结果是数字,代表“-”在单元格的位置(第几个字符),此时我们需要提取的数字长度就是find的结果减1,因此方法就有了:=LEFT(A2,FIND("-",A2,1)-1)

  • ?

    Excel如何提取字符串中的特定字符

    牟谷冬

    展开

    Excel如何提取字符串中的特定字符   

          除了直接输入外,从已存在的单元格内容中提取特定字符输入,绝对是一种省时又省事的方法,特别是对一些样式雷同的信息更是如此,比如员工名单、籍贯等信息。   

          如果我们想快速从A4单元格中提取称谓的话,最好使用“=RIGHT(源数据格,提取的字符数)”函数,它表示“从A4单元格最右侧的字符开始提取2个字符”输入到此位置。当然,如果你想提取姓名的话,则要使用“=LEFT(源数据格,提取的字符数)”函数了。还有一种情况,我们不从左右两端开始,而是直接从数据中间提取几个字符。比如我们要想从A5单元格中提取“武汉”两个字时,就只须在目标单元格中输入“=MID(A5,4,2)”就可以了。意思是:在A5单元格中提取第4个字符后的两个字符,也就是第4和第5两个字。

  • ?

    这些函数提取都不会,就别再说你会Excel了

    年少

    展开

    在实际工作中,我们经常需要在一些信息中提取出所需的数字或者文本。今天和大家分享4个常用的函数提取案例。

    1、拆分文本和数字

    比如我们需要从信息中提取出左边的文本部分,输入公式:=LEFT(A2,LENB(A2)-LEN(A2)),往下填充公式即可。

    如果提取右边的数字,则输入公式:=RIGHT(A2,(2*LEN(A2)-LENB(A2))),往下填充公式即可。

    说明:LEN函数是返回字符串的字符数,数字、字母和汉字均为1个字符长度;LENB则返回字符串的字节数,汉字为2个字节长度,数字和字母为1个字节长度。

    2、从邮箱中提取用户名和域名

    如图中表格所示,我们需要从邮箱地址中提取出用户名和域名。

    提取用户名,选中需要输入公式的单元格区域,输入公式:=LEFT(B2,FIND("@",B2)-1),按Ctrl+Enter组合键填充。

    说明:这里用FIND函数查找出“@”符号的位置,减去1正好是用户名的长度,再利用LEFT函数从左提取即可。

    如果提取域名,则选中需要输入公式的单元格区域,输入公式:=RIGHT(B2,LEN(B2)-FIND("@",B2)),按Ctrl+Enter组合键填充。

    说明:这里先用LEN函数计算整个字符串长度减去@符号前面字符长度,求得域名字符串长度,再利用RIGHT函数从右提取即可。

    3、提取出产品编号并判断所属类别

    如下图表格所示,我们需要先提取出产品的编号,然后进行大类的判断。

    这里我们选中需要输入公式的单元格区域,输入公式:

    =IF(LEFT(A2,2)="DQ","电器",IF(LEFT(A2,2)="JJ","家具","装饰")),按Ctrl+Enter组合键填充。

    说明:先利用LEFT函数提取出前两个字符,再结合IF函数进行判断。

    4、提取出混合字符串中的数字

    如图中表格所示,需要把字符串中间的数字提取出来,先选中需要输入公式的单元格区域,输入公式:=MIDB(A2,SEARCHB("?",A2),(2*LEN(A2)-LENB(A2))),按Ctrl+Enter组合键填充。

    说明:先用SEARCHB("?",A2)查找出第一个数字在字符串中的位置;2*LEN(A2)-LENB(A2)则是计算出数字的个数;最后用MIDB函数提取出来。这里带有B后缀的函数公式,都是按照字节数进行计算。

  • ?

    EXCEL快速提取中英文、数字的4个方法,总有一个适合你!

    含蕊

    展开

    应用场景:工作中,常常需要从单元格数据中截取一部分进行统计、计算,或者从不同系统导出的数据中提取中文、数字和英文等,如何快速提取需要的数据呢?介绍4种常用方法。

    第一种方法,用文本截取函数三剑客(LEFT/RIGH/MID函数)和文本长度度量函数(LEN /LENB)来提取

    1、LEFT函数和RIGHT函数

    参数:

    LEFT (①要截取的文本或字符串,②要截取的字符个数)

    RIGHT (①要截取的文本或字符串,②要截取的字符个数)

    2、MID函数

    参数:

    MID(①要截取的文本或字符串,②从哪个位置开始截取,③要截取的字符个数)

    3、LEN和LENB函数

    LEN()& LENB()函数的参数很简单,只有一个,就是您要测量长度的文本,LEN()函数和LENB()函数的区别就是前者测量字符数,后者测量字节数,只有在文本字符串中包含汉字时才会有区别。

    4、案例

    案例1:从身份证号中截取省市区代码、出生年月和顺序及校验码

    省区代码:从左边取6位。C2公式:Left(B2,6)

    出生年月:从第7位数据开始取,要取出8位数。D2公式:Mid(B2,7,8)

    顺序号和校验码:从右边4位数。E2公式:Right(B2,4)

    案例2: 将单元格中的中英文分开

    提取英文:

    ①在B2单元格录入公式:=LEFT(A2,LEN(A2)*2-LENB(A2))

    ②下拉填充公式。

    公式解析:

    LEN(A2)*2得出的结果是:12 (效果相当于:love爱love爱)

    LENB(A2)得出的结果是:8 (效果相当于: love爱爱)

    LEN(A2)*2-LENB(A2)得出的结果是:12-8=4(效果相当于:love爱love爱- love爱爱=love)

    最后用LEFT函数从左取相对应的英文字母数即可提取英文单词。

    提取中文:

    ①在C2单元格录入公式:=RIGHT(A2,LENB(A2)-LEN(A2))

    ②下拉填充公式。

    公式解析:

    LENB(A2)得出的结果是:8 (效果相当于:love爱爱)

    LEN(A2)得出的结果是:6(效果相当于:love爱)

    LENB(A2)-LEN(A2)得出的结果是8-6=2 (love爱爱- love爱=爱)

    最后用RIGHT函数从右取相对应的汉字字符数即可提取中文。

    第二种方法:用EXCEL快速填充功能提取

    快速填充是EXCEL2013以上版本的一个新功能,她能模拟、识别你的操作,推测你内心的想法,然后按照你的想法进行数据填充。

    运用快速填充时,首先直接输入一组到三组数据,让Excel自动识别你的意图,再进行快速填充,快速填充的快捷键为Ctrl+E,也可以单击“数据”选项卡 > 在“数据工具”组中 > 单击“快速填充”或选中示例单元格,拖动填充柄往下填充,然后在“自动填充”选项中选择“快速填充”来实现。(详细教程可见“EXCELl学习微课堂分享的《EXCEL快速填充功能如此牛逼,你知道吗?》)

    案例动态演示:

    第三种方法:用自定义函数myget

    函数有两参数,=myget(①从哪提取,②提取什么)

    =myget(字符串,0) 取出数字

    =myget(字符串,1) 取出中文字符

    =myget(字符串,2) 取出英文字母

    =myget(字符串,3) 取出特殊字符

    =myget(字符串,4) 取出取第一个数字的位置

    =myget(字符串,5) 取出取最后一个数字的位置

    方法步骤:

    首先导入自定义函数的模板文件,点开发工具→VBA或都按ALT+F11 调出VBA 编辑器 →在工程窗口右键选择【导入文件】→选择VBA 模块文件(提取中文、英文和数字自定义函数myget.bas)→关闭VBA 编辑器。然后再输入公式即可。

    动态演示:

    第四种方法:用【数据】→【分列】的方法

    案例步骤:

    1、【选中需分列的列】→【数据】→【分列】,在弹出的文本分列向导设置窗口中,根据实际情况选择分隔符号或固定宽度,案例中都是用/分隔的,所以选【分隔符号】→【下一步】

    2、选择分隔符号为其他符号【/】→【下一步】

    3、选列区域的格式,案例中选择默认的常规格式即可,目标区域选择$B$1(即分列的结果放在哪)点【完成】数据按要求进行了分类提取到3列。

    动态演示:

    小伙伴们,EXCEL快速提取方法都齐了,大家可根据需要选取不同的方法!

    我是EXCEL学习微课堂,分享EXCEL学习小技巧,小经验。如果分享的内容对您有帮助,欢迎点赞、收藏、评论、转发,更多的EXCEL技能,可以关注“EXCEL学习微课堂”。如需自定义函数myget代码文件,可私信联系我!

  • ?

    WPS Excel:函数提取各种各样的字符串

    Pozos

    展开

    如果给你一份如下excel表格,怎样将这些姓名和电话(文字和数字)分离开呢?

    本文将用下面这些函数来提取字符串中的文字和数字。熟练掌握这几个函数和文末终极大法,提取内容就不怕啦。

    这些函数中,LEFT\RIGHT\MID属于同一组函数,主要用于从不同位置开始提取指定个数的字符;LEN\LENB属于一组,用于获取字符个数和字节数。FIND函数可以是三个参数也可以是两个参数,用于获取包含字符串的位置。

    有规律的字符串

    这个是提取字符串最简单的一种了。直接用LEFT函数提取前3位就是姓名,RIGHT函数提取后11位就是电话,MID函数从第4位开始提取3位就是手机号码前3位了。

    文字和数字之间有个共同的分隔符

    这种也是比较简单的,由于有个共同的符号,因此可以用FIND函数获取这个符号的位置,然后用LEFT函数提取符号左边的内容;“LEN(单元格)-FIND("符号",单元格)”可以获取符号右侧的字符个数,接着用RIGHT就可以提取右半边的内容。

    文字和数字不规律,文字在前

    LENB函数可以获取字节数,LEN函数获取字符个数,一个汉字占两个字节、一个数字占一个字节,因此“LENB(单元格)-LEN(单元格)”就可以获得文字的个数。这样用“LEFT(单元格,文字个数)”就可以提取姓名,用“RIGHT(单元格,总的个数-文字个数)”就可以提取数字。

    文字和数字不规律,数字在前

    其实这和上一个例子没有区别,思路也是一样的,先获取文字个数和数字个数,再分别用RIGHT和LEFT提取。

    终极大法

    不管上面哪种情况,用Excel的快速填充都可以轻松提取数字和文本。在这条鄙视链上,WPS妥妥地被鄙视了。

    欢迎点赞、评论、关注和点击头像。

  • ?

    巧用函数,在EXCEL取得指定字符串中的任意字符

    应凝丝

    展开

    假设是要返回A1单元格字符串中倒数第二个字符内容,那么可以在另一单元格写入公式

    公式一

    =LEFT(RIGHT(A1,2))

    公式二

    =MID(A1,LEN(A1)-2,1)

    相关函数的定义

    1.LEFT函数

    也应用于:LEFTB

    LEFT基于所指定的字符数返回文本字符串中的第一个或前几个字符。

    LEFTB基于所指定的字节数返回文本字符串中的第一个或前几个字符。此函数用于双字节字符。

    语法

    LEFT(text,num_chars)

    LEFTB(text,num_bytes)

    Text是包含要提取字符的文本字符串。

    Num_chars指定要由LEFT所提取的字符数。

    Num_chars必须大于或等于0。

    如果num_chars大于文本长度,则LEFT返回所有文本。

    如果省略num_chars,则假定其为1。

    Num_bytes按字节指定要由LEFTB所提取的字符数。

    2.RIGHT函数

    也应用于:RIGHTB

    RIGHT根据所指定的字符数返回文本字符串中最后一个或多个字符。

    RIGHTB根据所指定的字符数返回文本字符串中最后一个或多个字符。此函数用于双字节字符。

    RIGHT(text,num_chars)

    RIGHTB(text,num_bytes)

    Num_chars指定希望RIGHT提取的字符数。

    Num_bytes指定希望RIGHTB根据字节所提取的字符数。

    说明

    如果num_chars大于文本长度,则RIGHT返回所有文本。

    如果忽略num_chars,则假定其为1。

    3.MID函数

    也应用于:MIDB

    MID返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。

    MIDB返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。此函数用于双字节字符。

    MID(text,start_num,num_chars)

    MIDB(text,start_num,num_bytes)

    Start_num是文本中要提取的第一个字符的位置。文本中第一个字符的start_num为1,以此类推。

    Num_chars指定希望MID从文本中返回字符的个数。

    Num_bytes指定希望MIDB从文本中返回字符的个数(按字节)。

    如果start_num大于文本长度,则MID返回空文本("")。

    如果start_num小于文本长度,但start_num加上num_chars超过了文本的长度,则MID只返回至多直到文本末尾的字符。

    如果start_num小于1,则MID返回错误值#VALUE!。

    如果num_chars是负数,则MID返回错误值#VALUE!。

    如果num_bytes是负数,则MIDB返回错误值#VALUE!。

    4.LEN函数

    也应用于:LENB

    LEN返回文本字符串中的字符数。

    LENB返回文本字符串中用于代表字符的字节数。此函数用于双字节字符。

    LEN(text)

    LENB(text)

    Text是要查找其长度的文本。空格将作为字符进行计数。

    (本文内容由百度知道网友1975qjm贡献)

  • ?

    提取excel表格中数字前面的字母6大解法!

    陶初晴

    展开

    大家好,今天和大家分享“提取数字前面的字母你会几种方法?”,首先大家不要看我的解法,自己想想看,你可以用几种解法解出这个题,要求如下图,字母连续且在左边,数字在右边。我用6种解法分享给大家,记得全是数组公式。

    一、解法1:Find找第一个数字出现的位置|更多Excel学习和问题请加群:289393114、570064677

    1、公式截图

    2、公式

    =LEFT(A2,MIN(FIND(ROW($1:$10)-1,A2&5/19))-1)

    3、公式解释

    用find函数找到第1个数字出现的位置,然后减掉1,得到字母的个数,再从左边提取字母

    为什么A2后面要连接一个5/19,目的是防止找不到报错

    ROW($1:$10)-1指10个阿拉伯数字

    min提取的第一个数字出现的位置

    二、解法2:Count统计字母的个数

    =LEFT(A2,COUNT(0/(MID(A2,ROW($1:$19),1)>="A")))

    MID(A2,ROW($1:$19),1)>="A" 用mid函数分隔每个字符,然后判断是否大于等于A,注意不区分大小写的,得到一个维数组,由True,False构建的

    0/true返回0,0/False返回报错

    用Count统计0的个数,就是得到字母的个数,最后用Left函数提取字母出来

    三、解法3:Match找第一个数字出现的位置

    =LEFT(A2,MATCH(,MID(A2,ROW($1:$19),1)*0,)-1)

    用函数mid把每一个字母分隔,然后乘0,也就是所有的分隔出来的数全变成了0

    MATCH(,MID(A2,ROW($1:$19),1)*0,)-1用Match函数找到第1个0出现的位置,也就是第一个数字出现的位置,所以也要减掉1

    然后用Left函数从左边提取

    四、解法4:Match找最后一个字母出现的位置

    =LEFT(A2,MATCH(1,0/(MID(A2,ROW($1:$19),1)>"9")))

    0/(MID(A2,ROW($1:$19),1)>"9")用Mid分隔每个字符,然后判断是否大于9,记得9要加双引号,所以的字母都大于“9”,也就是说所有字母在的位置都返回true,我们找最后一个true的位置,其实就是最后一个字母的位置,用0除,目的让所有的True返回0,所有的False报错

    MATCH(1,0/(MID(A2,ROW($1:$19),1)>"9"))用match找最后一个0的位置

    最后用lfeft从左边提取

    五、解法5:字母的个数=总字符数-数字的个数

    =LEFT(A2,LEN(A2)-COUNT(--RIGHT(A2,ROW($1:$19))))

    COUNT(--RIGHT(A2,ROW($1:$19)))统计数字的个数

    LEN(A2)-COUNT(--RIGHT(A2,ROW($1:$19)))总的字符数减掉数字的个数,得到字母的个数

    六、解法6:巧用Match第2参数

    =LEFT(A2,COUNT(MATCH(MID(A2,ROW($1:$19),1),CHAR(ROW($65:$90)),)))

    用mid把每个字符都分隔出来作match函数第1参数,这里很巧妙用26个字母作match函数的第2参数,也就是说单元格里每一个字符都会返回一个数字位置,这些数字的个数就是字母的总个数,然后用Count函数去统计

    CHAR(ROW($65:$90))返回26个大写字母

    另注意,Match函数查找字母时,不区分大小写字母

excel提取前几个字符

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP